我UITableViewController
中的UINavigationController
名为UIPopoverController
,显示在UITableviewContoller
中。
有时EditPoint是根UITableview,有时另一个[self.navigationController pushViewController:tableView animated:TRUE];
推动EditPoint。
有没有一种方法可以让我在EditPoint TableViewController中判断是否有人将其推入视图或是否为根?
我推送EditPoint:
DLog(@"self.navigationController.presentingViewController: %@", self.navigationController.presentingViewController);
DLog(@"self.navigationController.presentedViewController: %@", self.navigationController.presentedViewController);
DLog(@"self.presentingViewController: %@", self.presentingViewController);
DLog(@"self.presentedViewController: %@", self.presentedViewController);
然后在EditPoint中我尝试了:
[self.navigationController popToRootViewControllerAnimated:TRUE];
并且它们都返回NULL。
但如果我尝试:
presentingViewController
或任何其他流行方法,它都有效。
知道为什么我无法弄清楚{{1}}是什么?
最终结果是我需要判断是否有后退按钮,或者我是否需要在其中放置一个显示取消的按钮。有没有更好的方法来解决这个问题?
答案 0 :(得分:0)
使用self.navigationController.viewControllers检查self是否是其导航控制器堆栈上的根视图控制器,当控制器显示为模态时,应使用您正在使用的属性。