iOS-懒加载

原理:懒加载是当你使用某个对象时才创建,它通过在.h文件中@property定义一个实例变量(使其实例变量拥有set和get方法),并通过复写get方法实现懒加载.当需要使用时**self.实例变量**才能实现懒加载(**_实例变量没有set和get方法是不能实现加载的**)

优点:它可以使代码可读性更高,对象和对象之间的独立性更强.

一般用法:

    [self.view addSubview:label];```

懒加载:
.h文件:

//自带set和get方法
@property (nontation,strong) UILabel *titleLabel;
@property(nonatomic,strong,readonly)UIButton *searchButton;

.m文件

//复写titleLabel 的get方法

  • (void)viewDidLoad {
    [super viewDidLoad];

    //2 懒加载形式 (当你需要使用的时候,才需要创建)
    self.titleLabel.backgroundColor = [UIColor redColor];
    self.titleLabel.text = @"我是懒加载";
    }


-(UILabel*)titleLabel{

if (_titleLabel == nil) {

    _titleLabel = [[UILabel alloc]initWithFrame:CGRectMake(0, 100, 100, 50)];      
    [self.view addSubview:_titleLabel];
}

return _titleLabel;

}


//synthesize 取属性别名,可通过_获取实例变量
@synthesize searchButton = _searchButton;

-(UIButton *)searchButton{

if (_searchButton == nil) {
     _searchButton  = [UIButton buttonWithType:UIButtonTypeCustom];
    
    [self.view addSubview:_searchButton];
}

return _searchButton;

}


运行效果:

![懒加载显示label和button](http://upload-images.jianshu.io/upload_images/2471265-0629cf37e937e1c4.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • iOS开发系列--网络开发 概览 大部分应用程序都或多或少会牵扯到网络开发,例如说新浪微博、微信等,这些应用本身可...
    lichengjin阅读 3,764评论 2 7
  • 懒加载——也称为延迟加载,即在需要的时候才加载(效率低,占用内存小).所谓懒加载,写的是其get方法. 注意:如果...
    Double丶K阅读 605评论 0 1
  • 什么是懒加载? 简单的讲就是拖到最后一刻,万不得已了,才加载,才开始占用资源。所谓懒加载,写的就是其getter方...
    知本集阅读 3,221评论 4 2
  • 懒加载:也称延时加载,即在对象用到的的时候才加载。其实懒加载,就是所谓的重写对象的get方法,当系统或者开发者调用...
    请叫我周小帅阅读 1,452评论 0 1
  • 苏旎正快速的拨着算盘,脑子里细细琢磨着她这些天坑来了哪些好宝贝,一共赚了多少钱,阿,不对,她这只是生意人的精明,仅...
    恋爱绝缘体阅读 551评论 4 3