首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么"loadNibNamed“方法返回数组?

为什么"loadNibNamed“方法返回数组?
EN

Stack Overflow用户
提问于 2016-03-22 15:45:04
回答 3查看 424关注 0票数 2

当我们使用loadNibNamed方法来获取nib文件时,为什么会返回一个数组,不是一个nib文件名对应一个nib文件吗?我试着打印这个数组的计数,我发现它总是返回1。希望你能帮我解释一下,非常感谢!以下是代码片段:

代码语言:javascript
复制
 NSArray *array = [[NSBundle mainBundle] loadNibNamed:@"TestView" owner:self options:nil];
 NSLog(@"array's count is %ld",array.count);
EN

回答 3

Stack Overflow用户

发布于 2016-03-22 15:49:38

这是因为NIB/xib文件还可以包含多个视图表达。因此,在数组中,您可以访问所有包含的视图。

票数 3
EN

Stack Overflow用户

发布于 2016-03-22 15:55:08

xib返回数组原因是".XIB“可以包含多个视图。优点是您不必为一个视图创建一个xib文件。您只需将多个视图放入一个XIB中,并从一个数组中访问它

示例

.Xib --> arrayview1,view2,view3,view4

你可以从图片中看到

票数 3
EN

Stack Overflow用户

发布于 2017-01-10 02:45:26

感谢here的讨论

这是ProjectBuilder/PBX/Interface Builder早期遗留下来的遗留设计。我强烈建议不要使用这种方法,只使用单独的xib文件。我看不出有什么好处。

但是,如果决定仍然这样做,您可以拥有多个视图。

使用.first或[0]访问视图,使用[1]访问视图-2,等等。尽管如此,日航在评论中表示,它不能保证正确返回索引,最好是使用switchfilter或使用tags作为视图。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36148706

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档