1

使用两个 ViewController,MyView 1 和 MyView 2,是否可以从 MyView1.m 向 MyView2 添加子视图?

我试过了:

MyView2 * screen = [[MyView2 alloc]initWithNibName:nil bundle:nil];
[screen.view addSubView:mySubView];

但是我的 MyView 2 的新实例与 MyView2 上的“可见”ViewController 没有连接,对吧?

澄清一下,显示的 ViewController 是 MyView1。我希望 MyView1 能够将子视图添加到 MyView2 视图。

谢谢

4

4 回答 4

2

我认为您将 viewControllers 与视图混淆了,或者至少您的问题是。也许你正在寻找这样的东西 -

MyViewController2 *myViewController2 = [[[MyViewController2 alloc] initWithNibName:nil bundle:nil] autorelease];

[myViewController2.view addSubView:mySubView];
// add any other views to myViewController2's view

[self.view addSubView:myViewController2.view]; // adding the view to VC1's view

如果您希望能够继续在 MyViewController1 中添加内容,您应该将 myViewController2 或其视图声明为保留属性。

于 2012-04-16T11:37:08.440 回答
1

您可以让 MyView1 控制器将一些信息保存在应用程序的一个公共对象中,以便当 MyView2 重新出现时,它可以在需要时将子视图添加到其视图中。

于 2012-04-15T23:26:23.030 回答
0

假设 MyView2 是 UIViewController 的子类,则addSubView:viewcontroller 本身没有方法。相反,您想将 subView 添加到您的视图控制器中view,如下所示:

[screen.view addSubview:mySubView];
于 2012-04-15T22:46:19.243 回答
0

试试这个,

[MyView1.view addSubView:MyView2];
[self.view addSubview:MyView1];
于 2012-04-16T10:47:28.993 回答