假设有一个类 名字叫做Puzzled继承UIViewController 声明了个属性 @property (nonatomic, strong) UIButton *btn;
跟声明了属性 @property (nonatomic, weak) UIButton *btn; 在- (void)viewDidLoad方法中调用 {UIButton *btn = [[UIButton alloc]init];self.btn = btn}的区别是什么
欢迎选择我的课程,让我们一起见证您的进步~~
由于生成的button并没有别的地方保持引用,weak属性的property的话在你赋值之后就丢失了。
如果是有别的对象引用着他,就用weak,不然就用strong
如果没有对象引用他,他创建完出了作用域,就会remove
还有就是当xib或者storyboard中拖物过来的,那么此时是用weak,
由于生成的button并没有别的地方保持引用,weak属性的property的话在你赋值之后就丢失了。
如果是有别的对象引用着他,就用weak,不然就用strong
如果没有对象引用他,他创建完出了作用域,就会remove
还有就是当xib或者storyboard中拖物过来的,那么此时是用weak,