对于UI控件学习的总结(一):懒加载

原创 2015年11月17日 17:55:24

自己研究了这么长时间,觉得应该写一些东西出来,对与别人或者自己在以后想看的时候,能够有帮助。

废话不多说,下面我们就看一下iOS中的懒加载到底是怎么一回事


懒加载:

1、基本定义:

     延时加载,即当对象需要用到的时候再去加载。其实就是所谓的重写对象属性的getter方法,当系统或者开发者调用对象的getter方法时,再去加载对象。(注意:在重写getter方法时,先要判断当前的对象是否为空,如果为空的话再去实例化对象


2、懒加载的优势:

      首先,懒加载并不需要在viewDidLoad中去实例化对象,从而减少了代码的冗余性,增强代码的可读性

      其次,懒加载对象的实例化是在getter方法中,降低了代码的耦合性

      最后,懒加载降低了对于系统内存的占用率(最常见的懒加载对象:self.view


3、代码展示

       

//懒加载:在合适的地方创建
//重写getter方法
//一旦使用懒加载,程序中所有使用到这个属性,都要使用getter方法

-(NSMutableDictionary *)dataDict
{
    //注意 :在懒加载中需要使用getter方法的地方都使用实例变量
   
    if (_dataDict == nil) {
       
        //使用setter方法的时候,就使用self
        self.dataDict = [NSMutableDictionary dictionary];
        [self makeData];
    }
   
    return _dataDict;
}

//正常写法(非懒加载)
//用于对比懒加载
@interface ViewController ()

@property (nonatomic, strong) NSMutableDictionary *dataDict;

@end

@implementation ViewController

- (void)viewDidLoad {

    [super viewDidLoad];

    self.dataDict = [NSMutableDictionary dictionary];
}

@end


4、对于懒加载的使用的注意事项

        我们习惯于把一个控件作为懒加载对象,而对于容器类尽量不要作为懒加载对象。






jquery表格树插件GridTree懒加载版本(开源,含demo)

  • 2010年04月03日 00:13
  • 4.18MB
  • 下载

列表懒加载的实现

思路:首先需要一个触发事件,来触发加载更多这一事件,在触发的函数中,弹出一个加载的页面,并将向后台传输的page_size加5,然后判断加载数据的长度是否为0。如果为不为0,则给loadAll附一个值...
  • qq_38614249
  • qq_38614249
  • 2017年10月17日 10:26
  • 94

iOS开发UI篇—懒加载

iOS开发UI篇—懒加载 1.懒加载基本 懒加载——也称为延迟加载,即在需要的时候才加载(效率低,占用内存小)。所谓懒加载,写的是其get方法. 注意:如果是懒加载的话则一定要注意先...
  • u010927311
  • u010927311
  • 2014年10月09日 09:41
  • 3294

前端如何实现图片懒加载(lazyload) 提高用户体验

定义 图片懒加载又称图片延时加载、惰性加载,即在用户需要使用图片的时候加载,这样可以减少请求,节省带宽,提高页面加载速度,相对的,也能减少服务器压力。  惰性加载是程序人性化的一种体现,提高用...
  • Magneto7
  • Magneto7
  • 2017年02月17日 18:16
  • 3784

MiniUI——TreeGrid懒加载

首先看,前端treegrid的属性配置:
  • Shiyaru1314
  • Shiyaru1314
  • 2015年12月30日 10:08
  • 3279

iOS开发-UI中懒加载的使用方法

1.懒加载基本 懒加载——也称为延迟加载,即在需要的时候才加载(效率低,占用内存小)。所谓懒加载,写的是其getter方法。说的通俗一点,就是在开发中,当程序中需要利用的资源时。在程序启动的时候...
  • sinat_28709097
  • sinat_28709097
  • 2016年05月16日 15:03
  • 4513

jquery懒加载使用方法

懒加载是网站性能优化的插件,可以提高用户体验。 页面如果有很多图片的时候,当你滚动到相应的行时,当前行的图片才即时加载的,这样子的话页面在打开只加可视区域的图片,而其它隐藏的图片则不加载。 1、引...
  • shipeng22022
  • shipeng22022
  • 2015年12月29日 16:08
  • 5347

五、swift3.0闭包和懒加载

一、懒加载 二、UITableView的使用 三、
  • cwhzm
  • cwhzm
  • 2017年06月18日 11:27
  • 535

iOS开发UI篇—懒加载

1.懒加载基本 懒加载——也称为延迟加载,即在需要的时候才加载(效率低,占用内存小)。所谓懒加载,写的是其get方法. 注意:如果是懒加载的话则一定要注意先判断是否已经有了,如果没有那么再去进行实...
  • x32sky
  • x32sky
  • 2015年05月09日 21:14
  • 3696

什么是hibernate懒加载?什么时候用懒加载?为什么要用懒加载?

所谓懒加载(lazy)就是延时加载,延迟加载。 什么时候用懒加载呢,我只能回答要用懒加载的时候就用懒加载。 至于为什么要用懒加载呢,就是当我们要访问的数据量过大时,明显用缓存不太合适, 因为内存容量有...
  • u014788554
  • u014788554
  • 2015年04月14日 13:59
  • 1712
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:对于UI控件学习的总结(一):懒加载
举报原因:
原因补充:

(最多只允许输入30个字)