У меня есть UITabBarController как часть моего делегата приложения, и я хочу перехватывать, когда пользователь касается определенной вкладки (избранное), и заставлять таблицу в ней перезагружать данные.
Что будет лучшей практикой в этом случае?
Я добавил протокол UITabBarDelegate в мой делегат приложения и реализовал метод didSelectViewController. Все идет нормально. Внутри метода я получаю viewController, поэтому я могу проверить его заголовок и т. Д., Чтобы определить, какая вкладка выбрана.
Как я могу затем отправить сообщение reloadData в UITableView в viewController? Я попытался создать метод в своем классе FavouritesViewController и вызвать его, но он не работает.
Пример кода:
#pragma mark UITabBarController delegate methods
- (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController
{
// If the favourites tab is pressed then reload the data
if (viewController.title = @"Favourites")
{
if ([viewController respondsToSelector:@selector(reloadFavourites:)])
{
[viewController reloadFavourites];
}
}
}