繁体   English   中英

将子视图添加到另一个视图

[英]Add subview to another view

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

我努力了:

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

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

为了澄清,显示的ViewController是MyView1。 我希望MyView1能够向MyView2视图添加子视图。

谢谢

我认为您正在将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或其视图声明为保留属性。

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

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

[screen.view addSubview:mySubView];

尝试这个,

[MyView1.view addSubView:MyView2];
[self.view addSubview:MyView1];

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM