将导航堆栈移动到更多选项卡

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 颤动中更改时,如何将新页面添加到导航器堆栈?

如何使用反应导航 v5 从另一个选项卡导航到一个选项卡

将 UIViewController 推送到导航堆栈时如何显示选项卡栏

如何通过单击 QPushButton 移动到下一个选项卡(或导航到另一个选项卡)?

从嵌套屏幕导航到不同选项卡堆栈中的另一个嵌套屏幕(反应导航)