iOS UI 懒加载

懒加载——也称为延迟加载,即在需要的时候才加载(效率低,占用内存小)。所谓懒加载,写的是其getter方法。说的通俗一点,就是在开发中,当程序中需要利用的资源时。在程序启动的时候不加载资源,只有在运行当需要一些资源时,再去加载这些资源。
懒加载的核心在于:要注意先判断对象是否已经存在,如果不存在再实例化

使用懒加载的好处:

  • 不必将创建对象的代码全部写在viewDidLoad方法中,代码的可读性更强
  • 每个控件的getter方法中分别负责各自的实例化处理,代码彼此之间的独立性强,松耦合
  • 只有当真正需要资源时,再去加载,节省了内存资源。

实例:

#import "ViewController.h"

@interface ViewController ()
@property (nonatomic, retain) UIButton * lazyButton;
@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    
    [self createViews];
}
- (void)createViews{
    // 在这里一定要写"self.",而不能使用下划线"_"。因为会发生引用计数的变化
    [self.lazyButton setTitle:@"button" forState:UIControlStateNormal];
}
// button的getter延迟加载
- (UIButton *)lazyButton{
    if(_lazyButton == nil){
        self.lazyButton = [[UIButton alloc] initWithFrame:CGRectMake(self.view.frame.size.width/2 - 50, self.view.frame.size.height/2 - 20, 100, 40)];
        [self.view addSubview:_lazyButton];
    }
    [_lazyButton setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal];
    [_lazyButton setBackgroundColor:[UIColor blackColor]];
    return _lazyButton;
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 原文找不到了 iOS-UI-懒加载 1.懒加载基本 懒加载——也称为延迟加载,即在需要的时候才加载(效率低,占用内...
    破夕_____________阅读 396评论 0 0
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,638评论 25 708
  • 距离你回家还有七天 她撕下一张日历 默念了一个数字 她关注着你所在城市的天气 她收拾着你的房间 擦拭着桌子上薄薄的...
    王阿飞阅读 196评论 2 0
  • 昨天跟室友准备去吃自助餐。然后就商量怎么去的事儿。 室友:“咱们坐什么去xxx?” 我:“坐公交吧 ” 室友:“先...
    陪你到岁慕天寒阅读 263评论 0 0
  • 2017-12-2 周六 早上起床 一如既往地去上班 宝贝女儿早早地被妈妈叫醒送去托辅 中午女儿在托辅吃饭 我回到...
    899037e3b5bb阅读 131评论 0 1