2011-01-28 4 views
3

У меня есть приложение, которое я создал как приложение панели вкладок, и есть 3 вкладки («Главная», «Поиск», «Моя учетная запись»). В режиме «Начало» загружается информация и кнопка поиска. Затем кнопка поиска переводит пользователя в окно поиска, но поскольку пользователь не выбрал вкладку, выбранная вкладка все еще является вкладкой «Главная». Как изменить выбранную вкладку из «Домой» в «Поиск» после поиска «Вид»?Изменить выбранную вкладку UITabBar

ответ

8

Спасибо за помощь, ребята помогли мне в правильном направлении, я в конечном итоге с помощью делегата приложения для доступа к UITabBarController. Вот как это выглядело.

Motel_6AppDelegate *appDelegate = (Motel_6AppDelegate*) [[UIApplication sharedApplication] delegate]; 
    [appDelegate.rootController setSelectedIndex:1]; 
4

Прочтите документацию. Изнутри контроллера поиска, вы можете позвонить:

self.tabBarController.selectedViewController = self; 

UITabBarController также имеет selectedIndex свойство, если это более удобно для вас. viewDidLoad, вероятно, является неправильным местом для ввода этого кода, поскольку он может не вызываться каждый раз, когда отображается контроллер поиска. Вы должны выбрать вкладку непосредственно из действия, которое вызывается, когда пользователь нажимает кнопку поиска на главном экране.

3

Использовать tabBarController.selectedIndex = intIndex; // inyour случай 1

использовать этот код внутри applicationDidLaunch

0

Этот фрагмент кода работает для меня в раскадровки на iOS7 и Xcode 5.

- (IBAction)cancelButtonPressed:(id)sender 
{ 
    [self.tabBarController setSelectedIndex:1]; 
} 
Смежные вопросы