码迷,mamicode.com
首页 > 其他好文 > 详细

01-懒加载

时间:2015-07-10 22:03:00      阅读:132      评论:0      收藏:0      [点我收藏+]

标签:

懒加载,又被称为延迟加载,是指在开发过程当中,并不是在程序一启动的时候就加载资源,而是在用到的时候再进行创建和加载。

iOS设备的内存有限,如果在程序一启动的时候就加载所有的资源(如图片、数据、音频的加载等),就会占用设备的大量内存。

——1、自定义控件

  对于自定义控件属性,必须是strong类型,防止控件创建之后因为没有强指针指向而销毁。

  如:

// 默认表情内容
@property(nonatomic,strong )SHEmotionListView * defaultListView;

——2、在属性的getter方法中实现懒加载

  如:

- (SHEmotionListView *)defaultListView
{
    if (!_defaultListView) {
        self.defaultListView = [[SHEmotionListView alloc] init];
        NSString *path = [[NSBundle mainBundle] pathForResource:@"EmotionIcons/default/info.plist" ofType:nil];
        self.defaultListView.emotions = [SHEmotion objectArrayWithKeyValuesArray:[NSArray arrayWithContentsOfFile:path]];

    }
    return _defaultListView;
}

  懒加载是指在有一定的需要的时候,再实例化到内存中。

[self addSubview:self.recentListView];

  懒加载在第一次调用getter方法的时候,控件为空,然后才进行实例化加载到内存中。

  懒加载的好处是:

          —— 不必将创建对象的代码全部都写在ViewDidLoad方法当中,代码的可读性会更强。

          —— 每个属性的getter方法中分别负责各自的实例化处理,代码之间的耦合度也会随之相应的降低。

          —— 只有当真正需要资源的时候,才会去创建和加载,节省了内存资源。

 

  

01-懒加载

标签:

原文地址:http://www.cnblogs.com/SH9186ios/p/4637531.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!