ios - 添加一个 subview (在 xib 中创建)到 UIView

标签 ios iphone objective-c cocoa-touch uiview

我有一个 UIView,它包含 3 个其他 subview 。一开始,我并没有将这3个 subview 添加到UIView中,而是分别创建如下:

enter image description here

我想动态添加 subview 。所以我尝试如下代码:

将主视图添加到 UIViewController

UINib *nib = [UINib nibWithNibName:@"MainView" bundle:nil];
MainView* mainView = [[nib instantiateWithOwner:self options:nil] objectAtIndex:0];
[self.view addSubview:mainView];

目前一切正常。但是现在,在 MainView 类中,我添加了 subView,我崩溃了

UINib *nib = [UINib nibWithNibName:@"SubView1" bundle:nil];
SubView1* subView1 = [[nib instantiateWithOwner:self options:nil] objectAtIndex:0];
[self addSubview:subView1];

我的代码有什么问题?

最佳答案

我不知道为什么它会崩溃,因为我从未使用过这种类型。所以我建议你试试下面的方法

UIView *mainView=[[[NSBundle mainBundle] loadNibNamed:@"yourNibName" owner:self options:nil] objectAtIndex:0];
[[self view] addSubview:mainView];

同样的道理

UIView *subView1=[[[NSBundle mainBundle] loadNibNamed:@"yourNibName" owner:self options:nil] objectAtIndex:1];
[mainView addSubview:subView1];

UIView *subView2=[[[NSBundle mainBundle] loadNibNamed:@"yourNibName" owner:self options:nil] objectAtIndex:2];
[mainView addSubview:subView2];

UIView *subView3=[[[NSBundle mainBundle] loadNibNamed:@"yourNibName" owner:self options:nil] objectAtIndex:3];
[mainView addSubview:subView3];

我相信它会成功的

关于ios - 添加一个 subview (在 xib 中创建)到 UIView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24138731/

相关文章:

ios - 工具栏按钮的右侧。按钮越过右屏幕边框

ios - iOS 设备旋转时的 View 和场景不正确

iphone - 如何在提交应用程序时添加附加信息

ios - 单独文件中的类别给了我 "linker command failed with exit code 1 (use -v to see invocation)"

ios - 在 ViewController 之间传递 NSString 返回 NULL

ios - 插入 Collection View 单元格后是否可以重复使用?

javascript - 在通过 JavaScript 添加的 Safari/iOS 上以百分比翻译错误动画

iphone - 为什么在升级数据库时我的 iPhone 应用程序从 App Store 更新失败?

iphone - 在 Resources 文件夹下添加 iOS 图标和启动图像

objective-c - NSMutableString 和(字符)编码问题 : getting\U00fc in case of ü