Iphone 如何弹出“分割视图控制器”;DetailViewController?“;
此代码用于推送到局部视图。当我单击按钮时,如何在详细视图中弹出到另一个视图控制器?它不支持Iphone 如何弹出“分割视图控制器”;DetailViewController?“;,iphone,Iphone,此代码用于推送到局部视图。当我单击按钮时,如何在详细视图中弹出到另一个视图控制器?它不支持[self.navigationController popViewControllerAnimated:YES]。如何处理这个问题?提前谢谢 woooow这不是在navigationController的堆栈上推送视图控制器的方式 您不必亲自调用视图将消失,视图将出现等等!您也不必将detailViewController添加到splitViewController.viewControllers数组中
[self.navigationController popViewControllerAnimated:YES]代码>。如何处理这个问题?提前谢谢 woooow这不是在navigationController的堆栈上推送视图控制器的方式
您不必亲自调用视图将消失
,视图将出现
等等!您也不必将detailViewController
添加到splitViewController.viewControllers
数组中
您需要做的是:
- 确保您的UISplitViewController在其
detailViewController
中包含NavigationController
(即屏幕右侧的ViewController应该是UINavigationController
,而不是常规的UIViewController
)
- 其余部分则很简单,因为它的工作方式与任何常规的
UINavigationController
相同。您的UINavigationController
是UISplitViewController
的正确部分这一事实与您在任何其他上下文中使用UINavigationController
时没有什么不同
只需使用UINavigationController
的pushViewController:animated:
和popViewControllerAnimated:
方法即可推送和弹出视图控制器。从您的UISplitViewController
访问您的UINavigationController
,可以使用添加到该控制器的自定义IBOutlet
,也可以通过访问(UINavigationController*)[self.splitViewController.viewControllers对象索引:1]
执行什么操作?什么不起作用?我正在将主视图推到详细视图。在详细视图中,不使用pop操作。我想要普通的按钮点击弹出操作,但不支持弹出操作。谢谢你的帮助。我正在将主视图推到详细视图。我想单击详细视图中的按钮,然后执行弹出操作。详细视图不支持pop操作,因为我未使用普通的pushViewController:动画:。因此,寻找一些解决方案。请在NavigationController(其rootViewController将是您的detailView)中添加详细视图,并使用标准推送/弹出方法,这是最简单的解决方案。
detailViewController = [[DetailViewController alloc] initWithNibName:@"DetailViewController_iPad" bundle:nil];
[self.splitViewController.splitViewController viewWillDisappear:YES];
detailViewController.strDetailId = [teaserSectionOneArray objectAtIndex:indexValue] ;
NSMutableArray *viewControllerArray = [[NSMutableArray alloc] initWithArray:[[self.splitViewController.viewControllers objectAtIndex:1] viewControllers]];
[viewControllerArray removeAllObjects];
[viewControllerArray addObject:detailViewController];
[[self.splitViewController.viewControllers objectAtIndex:1] setViewControllers:viewControllerArray animated:NO];
[self.splitViewController.splitViewController viewWillAppear:YES];
[viewControllerArray release];