假设有一个类 名字叫做Puzzled继承UIViewController
声明了个属性 @property (nonatomic, strong) UIButton *btn;
跟声明了属性 @property (nonatomic, weak) UIButton *btn;
在- (void)viewDidLoad方法中调用 {
UIButton *btn = [[UIButton alloc]init];
self.btn = btn
}的区别是什么
假设有一个类 名字叫做Puzzled继承UIViewController
声明了个属性 @property (nonatomic, strong) UIButton *btn;
跟声明了属性 @property (nonatomic, weak) UIButton *btn;
在- (void)viewDidLoad方法中调用 {
UIButton *btn = [[UIButton alloc]init];
self.btn = btn
}的区别是什么
如果是有别的对象引用着他,就用weak,不然就用strong
如果没有对象引用他,他创建完出了作用域,就会remove
还有就是当xib或者storyboard中拖物过来的,那么此时是用weak,
2 回答1k 阅读
1 回答1.1k 阅读✓ 已解决
1 回答2.7k 阅读
1 回答1.5k 阅读
1 回答1.4k 阅读
1.7k 阅读
1 回答1.1k 阅读
由于生成的button并没有别的地方保持引用,weak属性的property的话在你赋值之后就丢失了。