ALAssetsLibrary resultBlock弱或强引用

时间:2014-08-18 20:46:29

标签: ios objective-c reference xcode5 objective-c-blocks

致电

[library assetForURL:referenceURL resultBlock:^(ALAsset *asset){...}

如果我要将图像传递给ImageView,我应该使用弱引用传递ImageView还是应该是强引用?通过弱引用我可能会出错吗?弱引用我的意思是

__weak MyVC *weakSelf = self; 
....
weakSelf.myImageView...

1 个答案:

答案 0 :(得分:-1)

Block保留它们引用的对象,然后创建一个保留周期。在上面的代码片段中,块创建了保留周期,您需要使用弱引用来打破保留周期

 __weak typeof(self) *weakself = self;

或者您也可以按照以下方式实施

__block MyVC *blockSelf = self;

并引用块内的blockSelf。

这可以避免循环,因为不保留blockSelf