日常

ios 同时对一个属性的 get set 方法进行重写,犯的低

2017-01-18  本文已影响503人  清河湾

不BB 直接上代码


viewController.h文件.png

同时重新 testView 的 get 和 set 方法

-(UIView *)testView{
    if(!_testView){
        
    }
    return _testView;
}
-(void)setTestView:(UIView *)testView{
    _testView = testView;
}

然后你会发现,报错了,报的错是 _testView undefined 未定义

原因都出在 _testView 中的 " __ " 上,
这个只是一种简便的写法 系统默认会生成

@synthesize testView = _testView   

@synthesize的作用是实现属性的,如getter,setter方法.

然后你一定要同时重写 set和get 方法 参考下面代码

@implementation ViewController
@synthesize  testView = aTestView; // 写在@implementation  ~ @end 之间 
-(UIView *)testView{
    if(!aTestView){
       aTestView = [UIView new];
       //you code
    }
    return aTestView;
}
-(void)setTestView:(UIView *)testView{
    aTestView = testView;
       //you code
}


上一篇下一篇

猜你喜欢

热点阅读