Я использую UISplitViewController с UITabbarController как главный просмотр и контроллер навигации в виде подробного представления. Каждая из вкладок на главном представлении содержит контроллер навигации. Когда выбрана какая-либо из вкладок на главном просмотре, на навигаторе просмотра подробного представления отображается представление.UISplitViewController popover is blank
recentsviewController = [[RecentsViewController_ipad alloc]initWithNibName:@"RootViewController" bundle:nil];
recentsNav = [[UINavigationController alloc] initWithRootViewController:recentsviewController];
//similarly rootNav and favNav
NSArray* controllers = [NSArray arrayWithObjects:recentsNav,self.rootNav,favNav,nil];
self.tabbarController.viewControllers = controllers;
detailViewController=[[LoginViewController_ipad alloc]init];
detailNav=[[UINavigationController alloc]initWithRootViewController:detailViewController];
splitViewController =[[UISplitViewController alloc]init];
splitViewController.viewControllers=[NSArray arrayWithObjects:self.tabbarController,self.detailNav,nil];
splitViewController.delegate = self.detailViewController;
[self.window addSubview:splitViewController.view];
[self.window makeKeyAndVisible];
Это похоже на работу. Когда приложение переходит в портретный режим, кнопка «Обзор» добавляется в панель навигации. Нажатие этой кнопки показывает скрытый вид, а вкладки отлично. Я могу переключаться между вкладками и работать с представлениями, отображаемыми в popover. При нажатии на другую, кроме области popover, popover отклоняется, как ожидалось.
Две вещи, которые не работают в
- поповер должен показать на своих собственных каждый раз, когда приложение переключается в портретный режим без того, чтобы пользователь выбрать кнопку добавлен в навигационной панели
- На в некоторых случаях мне нужно программно отказаться от popover.
Я попытался код Фолля:
- (void)splitViewController: (UISplitViewController*)svc willHideViewController:(UIViewController *)aViewController withBarButtonItem:(UIBarButtonItem*)barButtonItem forPopoverController: (UIPopoverController*)pc {
barButtonItem.title = @"Browse";
[[self navigationItem] setLeftBarButtonItem:barButtonItem];
self.appDelegate.rootPopoverButtonItem = barButtonItem;
self.appDelegate.splitViewPopover = pc;
[self.appDelegate.splitViewPopover presentPopoverFromBarButtonItem:self.appDelegate.rootPopoverButtonItem permittedArrowDirections:UIPopoverArrowDirectionUp animated:NO];
}
Это добавляет черный полупрозрачный поповер каждый раз при изменении ориентации. Как мне показать, что показывает кнопка просмотра при нажатии? Обычное увольнение от POPVOVERAnimated, похоже, не работает здесь.
Любая помощь приветствуется.