Я установил 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;
Я чувствую, что это связано с тем, что вложенные иерархии представлений в контроллере навигации не играют хорошо с контролем переподготовки - любые предложения?
Спасибо