如何使用Interface Builder正确控制UINavigationControllers?

时间:2009-07-01 23:12:35

标签: iphone uiview interface-builder uinavigationcontroller

过去两周我一直在学习构建iPhone应用程序。我已经获得了相当多的内容,现在我正在尝试用presentModalView创建一个模态弹出窗口。

我可以成功创建并向上滑动视图,但我注意到模态视图没有为您提供窗口顶部的默认导航栏,这对于我的灵活性是有意义的。我见过的大多数模态视图都有一个“取消”和一个“完成”或“保存”按钮作为看起来像UINavigationController的navigationItems。我的想法只是实例化一个导航控制器并将单个视图推送到视图控制器堆栈,而presentModalView:navController.view ...

因为视图相对复杂,我试图用条形按钮布置UINavigationController,以及我希望用单个xib推入堆栈的视图 - 无论我尝试什么,我都可以似乎没有正确的联系。你能做到吗?或者我应该为视图创建一个单独的类/ xib,我将要推入导航控制器?看起来像一个屏幕上的很多类和文件,所以我的感觉是我必须遗漏一些东西。

此时,我可以在大约一个半小时前以编程方式完成它...但是,这是一个真正的唠叨,因为IB对某些事情来说似乎很棒。任何人都有这种情况的经历吗?

谢谢, 约什

1 个答案:

答案 0 :(得分:1)

如果您不打算使用这个新的XIB进行导航,那么制作导航控制器毫无意义。

在界面构建器中,只需将UINavigationBar拖到视图顶部,然后添加“完成”按钮即可。现在,将IBAction添加到完成按钮以关闭视图控制器。解雇IBAction的ViewController代码应如下所示:

-(IBAction)dismiss {
    //Any logic before dismissing the modal view
    [super dismissModalViewControllerAnimated:YES];
}