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;

Мне кажется, это как-то связано с вложенными иерархиями представлений в контроллере навигации, которые не очень хорошо работают с элементом управления освежением памяти. Есть предложения?

Спасибо

Ответы на вопрос(13)

Ваш ответ на вопрос