为什么我的故事板中的第一个导航控制器对tableviewcontroller没有影响?

时间:2017-11-13 10:24:25

标签: swift xcode

我的故事板设置为:

                                                    UIViewCont 
                                                   /
NavigationController -> UIViewContr -> UIViewContr ----- UIView Contr
                                                  \ 
                                                   NavCont
                                                     \
                                                    TableViewController

最后三个控制器(2 x UIView和1 x TableView)使用" show"从三个不同的按钮中分离出来。 TableView控制器嵌入在NavCont中。

因为第一个控制器是一个NavController,每个UIViewController都有一个后退按钮,除了TableViewController。

我一直在阅读它,但无法弄清楚原因。除了每个导航控制器之外,它还有自己的堆栈和再次启动,因此您无法从第二个或第三个导航控制器导航回来。但不确定。

感谢。

1 个答案:

答案 0 :(得分:1)

使用导航控制器会重置导航堆栈跟踪,因此您的表视图没有后退按钮,因为它实际上是一个新的根。如果您创建一个视图控制器,表视图将其转换为,则它将具有一个后退按钮,因为它是(内部)导航链的一部分而不是根。

从您的示例中可以看出,您正在尝试做什么,或者为什么您拥有内部导航控制器而不仅仅依赖于原始导航堆栈。您可以尝试一种选择。导航栏的根视图应该有导航栏,您可以将栏按钮项拖到它上面,这样您就可以退回到之前的状态。