自定义UIModalViewController大小并具有导航栏

时间:2011-02-26 21:04:05

标签: iphone xcode uiviewcontroller modalviewcontroller

我创建了自己的ProfileUIViewControllerUINavigationControllerDelegate。我以两种方式显示此视图:

  1. 来自A-UIViewController.m内的IBAction,UIModalViewControllerA-UIViewController在加载时有UINavigationBar,但是当我显示模态时,它不再有导航栏。

  2. 单击B-UIViewController.m中的表格单元格行,将其推入堆栈。加载时B-UIViewController有一个UINavigationBar,而ProfileViewController会根据需要保留导航栏。)

  3. 我要做的是在视图作为案例1中的模式加载时保留UINavigationBar,填入INSIN UINavigationBar而不是覆盖整个视图。 (IE,我希望模式显示在导航栏下面的A-UIViewConroller内 - 使其尺寸更小)

    有人可以帮我吗?我是否需要制作自己的自定义ModalViewController课程 - 这不是ProfileUIViewController吗?它是否需要一些我不给它的实例方法?任何方向都会很棒:)

1 个答案:

答案 0 :(得分:2)

导航栏由导航控制器管理,而不是由您的视图控制器管理。将视图控制器推入导航控制器时,导航控制器使用navigationItem中的信息来确定要在导航栏中放置的内容。但是当你以模态方式显示你的视图控制器时,它不在任何导航控制器中,因此没有条形码。

模态案例的一个简单解决方案是创建一个新的UINavigationController,将视图控制器作为其根视图控制器,并以模态方式显示,而不是直接显示视图控制器。