更快地从iOS中的捆绑加载Nib文件?

Aus*_*the 4 objective-c nib nsbundle ios

我有一个应用程序,它使用一组自定义"控件",使用类似于下面的方法从Xib文件加载:

NSArray * topLevelObjects = [[NSBundle mainBundle] loadNibNamed:@"AudioPlayer" owner:self options:nil];
InteractiveMovieView *newAudio = [topLevelObjects objectAtIndex:0];
Run Code Online (Sandbox Code Playgroud)

这种方法效果很好,除非一次加载多个控件(实际上在应用程序的一个"页面"上).

每次从捆绑中加载显然效率低下但我无法找到另一种方法来解决这个问题.我已经尝试将nib加载到copy属性一次并根据需要返回它以便重复使用,但这不起作用,因为返回的副本永远不是空白笔尖的"干净"副本.

我希望这是有道理的,所有的帮助都表示赞赏.

rob*_*off 5

听起来你正在寻找这个UINib课程.从文档:

UINib只要需要重复实例化相同的nib数据,您的应用程序就应该使用对象.例如,如果表视图使用nib文件来实例化表视图单元格,则在UINib对象中缓存nib 可以显着提高性能.

  • 我假设Apple知道他们的代码是如何工作的,他们不会无缘无故地在文档中写出来.如果您有疑问,您应该对其进行分析. (2认同)