懒加载

来源:互联网 发布:h5场景源码 编辑:程序博客网 时间:2024/06/05 20:18

懒加载--延迟加载,程序启动时不加载资源,在需要时加载,写的是get方法

优点:

1)不将创建的代码全部写在viewDidLoad方法中,代码可读性强

2)每个控件的getter方法负责各自的实例化处理,代码彼此之间独立性强

3)需要资源时再进行加载,占用内存小

注意:

1)定义控件属性必须是strong

2)必须先判断是否已经存在,不存在再进行实例化

例:

1>定义一个数组

<span style="font-size:18px;">@property(nonatomic,strong)NSArray *imageList;</span>


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

-(NSArray *)imageList{    //第一次调用getter时,为空,实例化创建数组    if (_imageList == nil) {        NSString *path = [[NSBundle mainBundle]pathForResource:@"imageData" ofType:@"plist"];        _imageList = [NSArray arrayWithContentsOfFile:path];    }    return _imageList;}


3>多次访问_imageList

self.imageList;self.imageList;self.imageList;

虽然对_imageList进行了3次访问,但在第一次访问之后_imageList就不为nil,再次访问时,就会直接返回_imageList,而不会再实例化创建对象



0 0
原创粉丝点击