将导航堆栈移动到更多选项卡
Posted
技术标签:
【中文标题】将导航堆栈移动到更多选项卡【英文标题】:Moving a navigation stack to the more-tab 【发布时间】:2012-01-13 01:21:37 【问题描述】:我在UITabBar
的某个选项卡上有一个UINavigationController
。当我深入到导航控制器 tableViews 中,将其移动到更多选项卡中,然后在更多列表中选择 tableview 中的条目时,我得到了在我离开我移动的选项卡时可见的 viewController。点击后退按钮让我回到更多列表,不可能回到最初的根视图控制器。
当我单击更多列表中的项目时,让根视图控制器出现对我来说是完全可以的,但是我不知道如何在我的视图控制器被移动时得到通知,因为我正在开发一个库,因此没有对 TabBarController 的引用。
【问题讨论】:
【参考方案1】:其中一种方法是在 UITabBarViewController 委托中实现tabBarController:willEndCustomizingViewControllers:changed:
方法。并注意它。如果发生这种情况,请重置您的 viewController 和 navigationViewController。这将删除您的 UINavigationController 堆栈,但应用程序将正常工作。
【讨论】:
是的,我最终要求使用我的库,即使用它的应用程序将 -viewControllerWasReordered 发送到tabBarController:willEnd...
中的库单例。在 -viewControllerWasReordered 中,我基本上完全做到了 ^^以上是关于将导航堆栈移动到更多选项卡的主要内容,如果未能解决你的问题,请参考以下文章
swift - 如何从第一个选项卡到达第二个选项卡导航堆栈?
每次当前选项卡在 TabBar 颤动中更改时,如何将新页面添加到导航器堆栈?
将 UIViewController 推送到导航堆栈时如何显示选项卡栏