Objective-C / Cocoa:正确加载UIViews

时间:2009-05-07 17:55:16

标签: iphone objective-c cocoa-touch

假设我在Interface Builder中创建了一个UIViewMyView,我已经将它(将其文件所有者设置)连接到我的UIViewController类,MyViewController

现在,我想提出看法。这只是另一种观点,所以我不想把它作为模态视图来呈现。

我该如何展示它?我应该将其添加为窗口的子视图吗?如果是这样,相对于我的其他观点,它在哪里?我应该以某种方式将其作为一个视图以自己的方式呈现,并禁用其他视图?机制是什么?

2 个答案:

答案 0 :(得分:1)

这取决于您希望应用的行为方式。

您可以使用UIView addSubview将MyView添加为当前视图的子视图,如果您要在MyView上使用“完成”按钮或类似内容删除自身。

// show new view
MyViewController *myViewController = [[MyViewController alloc]init];
[self.view addSubview: myViewController.view];

或者,如果您希望用户能够导航回主视图(如邮件,笔记等),最常见的方法是将navigationController添加到窗口并使用pushViewController:animated:提出你的观点。

MyViewController *myViewController = [[MyViewController alloc]init];
[self.navigationController pushViewController:myViewController animated:YES];

在大多数情况下,我更喜欢navigationController方法。

答案 1 :(得分:0)