thefansofjay 2015-11-30 10:32 采纳率: 100%
浏览 2682
已结题

IOS block强引用循环问题,下面的代码为什么能避免强引用循环

下面的代码为什么能避免强引用循环?

    cell.thumbnailView.image = item.thumbnail;

__weak BNRItemCell *weakCell = cell;

cell.actionBlock = ^{
    NSLog(@"Going to show image for %@", item);

    BNRItemCell *strongCell = weakCell;

    if ([UIDevice currentDevice].userInterfaceIdiom == UIUserInterfaceIdiomPad) {
        NSString *itemKey = item.itemKey;
        // If there is no image, we don't need to display anything
        UIImage *img = [[BNRImageStore sharedStore] imageForKey:itemKey];
        if (!img) {
            return; }
        // Make a rectangle for the frame of the thumbnail relative to
        // our table view
        CGRect rect = [self.view convertRect:strongCell.thumbnailView.bounds
                                    fromView:strongCell.thumbnailView];
  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 关于#java#的问题,请各位专家解答!
    • ¥15 急matlab编程仿真二阶震荡系统
    • ¥20 TEC-9的数据通路实验
    • ¥15 ue5 .3之前好好的现在只要是激活关卡就会崩溃
    • ¥50 MATLAB实现圆柱体容器内球形颗粒堆积
    • ¥15 python如何将动态的多个子列表,拼接后进行集合的交集
    • ¥20 vitis-ai量化基于pytorch框架下的yolov5模型
    • ¥15 如何实现H5在QQ平台上的二次分享卡片效果?
    • ¥30 求解达问题(有红包)
    • ¥15 请解包一个pak文件