以模态方式从容器视图中呈现UIVIew(缺少导航栏)

时间:2014-03-07 23:24:46

标签: iphone view navigation containers

我对iPhone开发有点新鲜,并且正在努力学习它。

我有一个包含2个部分的视图控制器:

  1. 图片视图 - 一些图片+上面的一些文字
  2. 容器视图
  3. 现在,容器视图被嵌入到一个新的控制器视图中,我将其替换为集合视图。这里的想法是为了保留一些我可以点击进入另一页的图片。

    所以,尽管如此,我还是运转良好。我的主视图显示了顶部图片+文本,下面是所有可点击的小图片,并将我带到另一个以模态显示的视图。

    最终视图是一个UIView,其中包含一个imageView来保存我在另一个视图上单击的图片。这甚至可以正常工作。

    问题在于我正在尝试在新视图的顶部添加一个导航栏,它在故事板上显示得很好,我添加了一个按钮来关闭它。但是,由于某些原因,我在运行应用程序时没有显示出来。

    如果我将呈现模式更改为Push,我会看到导航栏也显示后退按钮,但我的关闭按钮也不起作用(添加代码以正确关闭视图)。

    我在模态演示中做错了什么?

1 个答案:

答案 0 :(得分:0)

如果您想以模态方式呈现带有导航栏的视图,则必须拥有该视图NavigationController
因此,在模态显示的View中也有一个NavigationBar,在ViewController前面拖动一个UINavigationViewController,例如:

Modally connected NavigationViewController

push segue的情况下不需要这样做,因为推送的ViewController仍然是原始UINavigationViewController的子项,它是NavigationBar的所有者  NavigationBar由UINavigationController管理,位于父端 因此,如果在Storyboard中添加按钮,则将这些按钮添加到属于ViewController的NavigationItem