Как изменить вкладку (UITabViewController) программно? - PullRequest
11 голосов
/ 18 февраля 2009

Я пытаюсь программно выбрать / изменить вкладку UITabViewController.

Я пытался сделать это через:

self.tabBarController.selectedIndex = 2;

Это похоже на то, как я должен это делать, но это не работает. Я подумал, что, возможно, self.tabBarController возвращает объект только для чтения (я помню, что где-то это читал), но я не уверен, как заставить его работать.

Любая помощь приветствуется!

Ответы [ 4 ]

29 голосов
/ 18 февраля 2009

Установить selectedViewController:

self.tabBarController.selectedViewController = viewControllerYouWant;

Например,

self.tabBarController.selectedViewController 
    = [self.tabBarController.viewControllers objectAtIndex:2];
3 голосов
/ 18 февраля 2009

Согласно документам, selectedIndex или selectedViewController - это свойства, которые вы хотите, и оба могут быть назначены.

Свойство tabBarController доступно только для чтения, но возвращает объект, который можно редактировать.

Так что весь ваш код выглядит мне правильно.

1 голос
/ 23 марта 2012

Это хорошо работает для меня, если вы хотите сделать это по индексу.

[self.tabBarController setSelectedIndex:2];
0 голосов
/ 06 августа 2009

Я делаю что-то вроде этого:

[root setSelectedViewController: [root.historyController navController]];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...