Подтвердить что ты не робот

Как изменить вкладку (UITabViewController) программно?

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

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

self.tabBarController.selectedIndex = 2;

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

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

4b9b3361

Ответ 1

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

self.tabBarController.selectedViewController = viewControllerYouWant;

Например,

self.tabBarController.selectedViewController 
    = [self.tabBarController.viewControllers objectAtIndex:2];

Ответ 2

В соответствии с документами selectedIndex или selectedViewController являются требуемыми вами свойствами и могут быть назначены.

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

Итак, весь ваш код выглядит правильно.

Ответ 3

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

[self.tabBarController setSelectedIndex:2];

Ответ 4

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

[root setSelectedViewController: [root.historyController navController]];