我有一个简单的场景:
一个带有几个嵌入UITableViewControllers的UINavigationController。
每个UITableViewController都有一个提示集,除了ROOT UITableViewController(没有提示)。
在每个UITableViewController中,都有一个UIBarButtonItem可以返回到ROOT UITableViewController:
- (void) backHome {
[[self navigationController] popToRootViewControllerAnimated: YES];
}
它实际上回到了ROOT UITableViewController,但它保留了来自最后一个UITableViewController的提示,同时它假设将其删除(知道ROOT UITableViewController没有提示)。
但是当我使用并使用代码
- (void) back {
[[self navigationController] popViewControllerAnimated: YES];
}
按预期删除提示。
为什么popToRootViewControllerAnimated不会删除提示?特别是在iOS 8.x中。因为它在iOS 7.1.2中工作
我使用最新的Base SDK 8.1
答案 0 :(得分:0)
尝试调用堆栈中的属性
[self.navigationController popToRootViewControllerAnimated: YES];
答案 1 :(得分:0)
我有类似的问题,可以确认它仍然存在当前的Xcode&模拟器。我在导航控制器中的所有视图控制器上都有一个提示,除了最后一个。
弹出根没有动画对我有效并再次显示提示,否则将无法显示。