UIRefreshControl - beginRefreshing не работает, когда UITableViewController находится внутри UINavigationController
Я установил UIRefreshControl в своем UITableViewController (который находится внутри UINavigationController), и он работает, как и ожидалось (то есть, выпадающее меню запускает правильное событие). Однако, если я программно вызовуbeginRefreshing
Метод экземпляра в элементе управления обновлением, например:
[self.refreshControl beginRefreshing];
Ничего не произошло. Это должно оживить вниз и показать счетчик.endRefreshing
Метод работает правильно, когда я вызываю это после обновления.
Я подстроил базовый проект-прототип с таким поведением, и он работает правильно, когда мой UITableViewController добавляется непосредственно в корневой контроллер представления делегата приложения, например:
self.viewController = tableViewController;
self.window.rootViewController = self.viewController;
Но если я добавлюtableViewController
сначала к UINavigationController, затем добавьте контроллер навигации в качествеrootViewController
,beginRefreshing
метод больше не работает. Например.
UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:tableViewController];
self.viewController = navController;
self.window.rootViewController = self.viewController;
Мне кажется, это как-то связано с вложенными иерархиями представлений в контроллере навигации, которые не очень хорошо работают с элементом управления освежением памяти. Есть предложения?
Спасибо