Обновить контроллер для встроенного просмотра таблицы IOS 6

Привет у меня в настоящее время есть встроенный просмотр таблицы в UIViewController. В табличном представлении у меня есть коллекция данных JSON. Я хочу создать контроллер обновления, поэтому всякий раз, когда пользователь отключается, данные json обновляются.

Я пробовал следующий код

- (void)viewDidLoad
{
[superviewDidLoad];

UIRefreshControl *refreshControl = [[UIRefreshControl alloc]
init];
[refreshControl addTarget:nil action:@selector(updateArray) forControlEvents:UIControlEventValueChanged];
self.refreshControl = refreshControl;

}

-(void) updateArray{
[self.tableView reloadData];
[self.refreshControl endRefreshing];
}

Я получаю ошибку, которая говорит, что свойство refreshControl не найдено в ViewController.

Это потому, что я использую встроенный просмотр таблицы или я делаю что-то не так?

2 ответа

Вы можете добавить UIRefreshControl только в UITableViewController, но не в UIViewController. Проверьте этот ответ для использования UIRefreshControl в UIViewController, где UITableViewController является дочерним. /questions/12430169/uirefreshcontrol-bez-uitableviewcontroller/12430190#12430190

Вы создаете экземпляр UIRefreshControl внутри метода viewDidLoad. Ссылка на этот объект не видна методу updateArray. Вам нужно будет либо сделать его свойством, либо переменной экземпляра.

@property (strong, nonatomic) UIRefreshControl *refreshControl;

тогда вместо

UIRefreshControl *refreshControl = [[UIRefreshControl alloc] init];

использование

refreshControl = [[UIRefreshControl alloc] init];
Другие вопросы по тегам