在我的一个类中,我有一个按钮,按下时加载另一个视图控制器和视图。这就是我使用的:
FormController *formController1=[[FormController alloc]initWithNibName:nil bundle:nil];
[self presentModalViewController:formController1 animated:YES];
问题是它加载了整个视图,但没有加载所有其他视图附带的导航栏。我做错了什么?
答案 0 :(得分:1)
也许你不应该使用模态视图控制器。如果您希望视图显示为导航堆栈的一部分,则需要将视图控制器加载到导航视图的堆栈中。
如果您希望新的模态视图控制器成为导航视图控制器,则将formController
设置为UINavigationController的根视图控制器,并将导航控制器显示为模态视图控制器。
答案 1 :(得分:0)
首先阅读UIViewController
Class Reference:
在iPhone和iPod touch设备上, modalViewController 的视图是 总是呈现全屏。在iPad上,演示文稿取决于 价值在
modalPresentationStyle
属性。
presentModalViewController:animated:
设置了modalViewController
属性到指定的视图控制器,调整其视图和 将它附加到视图层次结构。
您的FormController
是否有nib文件?如果是这样,您可以将提示设置为导航栏。
如果您想在另一个视图上显示您的视图,可以使用awakeFromNib
(实际上为您提供视图),这必须在您的ConfirmController
课程中实施。您没有使用initWithFrame
,但正如我可以通过您的班级名称ConfirmController
看到的那样,此类只是为了显示确认消息还是做了一些奇特的事情?如果是这样,那么您可以使用简单的UIView
/ UIAlertView
。