iPhone Objective-C:使用导航控制器单击选项卡时禁用堆栈弹出
Posted
技术标签:
【中文标题】iPhone Objective-C:使用导航控制器单击选项卡时禁用堆栈弹出【英文标题】:iPhone Objective-C: Disable the popping of the stack when clicking the tab with a navigation controller 【发布时间】:2010-07-27 02:33:34 【问题描述】:假设我有一个带有标签 A 的标签栏控制器。A 有一个导航控制器,它可以让我将新视图推送到堆栈上。现在,如果我点击选项卡栏上的 A,A 的堆栈中的所有元素都会弹出。
有没有很好的方法来禁用它?我有一系列视图,这些视图与导航控制器一起显示,这些视图接受用户输入,不希望所有这些都因手指滑动而丢失。
提前致谢,如果我的问题不清楚,请告诉我。
【问题讨论】:
【参考方案1】:尝试为您的 UITabBarController 设置一个委托,并实现:
- (BOOL)tabBarController:(UITabBarController *)tabBarController shouldSelectViewController:(UIViewController *)viewController
如果选择了相同的视图控制器,则返回 NO。那么导航堆栈不应该改变。
请注意,它只会在您从 ios 3.0 开始的同一个选项卡上调用,但此时我只针对 iOS 3.0+。
【讨论】:
以上是关于iPhone Objective-C:使用导航控制器单击选项卡时禁用堆栈弹出的主要内容,如果未能解决你的问题,请参考以下文章