美文网首页iOS
OC之如何重写属性的懒加载

OC之如何重写属性的懒加载

作者: OneByte | 来源:发表于2016-03-23 23:21 被阅读192次

最近在项目中遇到这样一个问题:

iOS9和iOS9以下有部分功能交叉,整合在一个ViewController,代码臃肿,现在想要拆分开,虽然继承在OC是一个比较少用的手段,但是在这边挺合适的.

在实际操作中,遇到这样一个问题,SubViewController去继承共用ViewController,然后重写@property懒加载属性时会报错:    

 Use of undeclared identifier '_xxx'

这是因为父类的@property属性的作用是:

      1.自动生成getter/setter 

       2.@private _xxx(当没有该属性名xxx时)

基于第2点,所以我们修改父类.h:

       修改前:  

       @property(nonatomic,copy) NSString *xxx; 

       修改后 :

       {NSString*_xxx;}   

       @property(nonatomic,copy) NSString *xxx;

相关文章

  • OC之如何重写属性的懒加载

    最近在项目中遇到这样一个问题: iOS9和iOS9以下有部分功能交叉,整合在一个ViewController,代码...

  • Swift中懒加载

    在Swift中对控件进行懒加载比oc中方便很多,只要lazy前缀,oc中懒加载方法,重写getter方法.Swif...

  • OC中对懒加载的理解

    懒加载 本质是重写getter方法; 用到时候再加载,而且只加载一次; 代码实例 懒加载的好处 懒加载体现了OC的...

  • Swift/OC懒加载(lazy)

    oc懒加载 oc懒加载机制充分使用了oc点语法的特性。举个例子 上面这个例子定义了view属性,当MyView被创...

  • Swift:)懒加载Lazy

    OC中,要实现懒加载是用到getter方法,例如 Swift懒加载差别就很大了,懒加载属性用lazy修饰,注意结尾...

  • swift中定义属性时的一个小问题

    在OC中我们平时定义属性时都是通过重写getter方法在其中实例化对象。但在swift中也有了懒加载的关键字,如下...

  • Swift: lazy 属性的写法

    序言:OC中有懒加载,Swift中用lazy关键字声明属性,也可以实现懒加载。lazy所修饰的属性只有第一次访问时...

  • Swift入门三(知识点)

    可选项 解包: 懒加载 懒加载Swift和OC的区别 getter 和setter 只读属性(计算型函数,有返回值...

  • Swift笔记(一)属性、析构、调用OC单例

    目录 swift属性存储属性懒加载属性计算属性属性监听类型属性 swift析构函数 swift调用OC单例类方法 ...

  • Swift-懒加载

    在OC中,一般是通过重写getter方法来实现,但是在swift中有专门的关键字lazy来实现某一个属性实现懒加载...

网友评论

    本文标题:OC之如何重写属性的懒加载

    本文链接:https://www.haomeiwen.com/subject/zbnthttx.html