首页 > 其他 > 详细

在block函数中规避错误信息 "capturing self strongly in this block is likely to lead to a retain cycle”

时间:2014-10-13 15:53:40      阅读:282      评论:0      收藏:0      [点我收藏+]

以形如

       _fontValueChangedBlock = ^(){
            [self.fontSmallButton addTarget:self action:@selector(btnFontSmallClicked) forControlEvents:UIControlEventTouchUpInside];
        };

的代码为例,这个代码运行会报警告。"capturing self strongly in this block is likely to lead to a retain cycle” 

要想消除这个警告,需要将代码改为如下形式:

        __weak typeof(self) weakSelf = self;
        
        _fontValueChangedBlock = ^(){
            typeof(weakSelf) __strong strongSelf = weakSelf;
            [strongSelf.fontSmallButton addTarget:strongSelf action:@selector(btnFontSmallClicked) forControlEvents:UIControlEventTouchUpInside];
        };

 

参考 http://stackoverflow.com/questions/16067712/avoiding-the-capturing-self-strongly-in-this-block-is-likely-to-lead-to-a-retai

在block函数中规避错误信息 "capturing self strongly in this block is likely to lead to a retain cycle”

原文:http://www.cnblogs.com/guozai9527/p/4022137.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!