从堆栈中弹出导航控制器/创建双视图

Posted

技术标签:

【中文标题】从堆栈中弹出导航控制器/创建双视图【英文标题】:Popping a Navigation Controller from stack / Creating a dual view 【发布时间】:2016-12-23 17:34:07 【问题描述】:

我在我的应用中实现了一个聊天系统。我希望此视图从右侧滑入(并覆盖整个屏幕),然后当用户按下“后退按钮”以滑回他们之前所在的视图。

应用程序的其余部分采用以下结构:

UINavigationController -> UITabBarController -> UINavigationController -> 然后是任何视图。

Chat 界面基本上只是两个 UIViewController(一个用于查看所有对话,一个用于单个聊天)。但它在 UINavigationController 中

我想有点像 Facebook 在线用户页面:

我尝试简单地推送聊天应用程序的 UINavigationController,然后在用户按下“返回”按钮时推送应用程序主要部分的最高 UINavigationController,但这总是将我带到第一个视图用户正在查看的第一个选项卡,而不是最后一个选项卡。

【问题讨论】:

【参考方案1】:

我认为您正在寻找类似MMDrawerController 的东西。

【讨论】:

是的,看起来不错。但是,它已经两年没有更新了,并且是用 Objective-C 编写的。我的主要问题是 - 当切换回原始导航控制器时,如何返回到用户之前所在的视图。我还是会遇到这个问题。

以上是关于从堆栈中弹出导航控制器/创建双视图的主要内容,如果未能解决你的问题,请参考以下文章

如何从堆栈中弹出视图控制器而不导航到它们

从导航堆栈中弹出视图控制器时从右侧滑入

为啥从导航堆栈中弹出视图时键盘不显示?

UICollectionView 调用 scrollViewDidScroll:从导航堆栈中弹出时

如何在不使用导航栏的情况下从导航堆栈中弹出控制器

在导航控制器中弹出到根视图