UITabbarController - как отменить выбор всех вкладок в iOS 5.0 и iOS 4.3, а также - PullRequest
3 голосов
/ 10 ноября 2011

Я попытался использовать следующий фрагмент

DefaultView *defaultView = [[DefaultView alloc]initWithNibName:@"DefaultView" bundle:[NSBundle mainBundle]];
        [self.tabBarController setSelectedViewController:nil];
        [self.tabBarController setSelectedViewController:defaultView];

Он работает для iOS 4.3 и ниже, но на iOS 5.0 выдает следующую ошибку:

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UITabBarController setSelectedViewController:] only a view controller in the tab bar controller's list of view controllers can be selected.'

Любые подсказки относительно того, что следуетсделать в iOS 5.0, чтобы обойти эту ошибку?

1 Ответ

0 голосов
/ 12 ноября 2011

DefaultView - это одна из ваших вкладок?Если да, попробуйте это выбрать:

NSUInteger newIndex = [self.tabBarController.viewControllers indexOfObjectIdenticalTo:defaultView];
[self.tabBarController setSelectedIndex:newIndex];

Я не знаю, ожидали ли вы, может быть, больше информации?

Редактировать: Вы получили эту ошибку, потому что: only a view controller in the tab bar controller's list of view controllers can be selected.Это означает, что представление по умолчанию отсутствует в списке представлений, поэтому вы не можете выбрать его.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...