Capturing ‘self‘ strongly in this block is likely to lead to a retain cycle
__block ViewController *controller = self;
[_tableView setPullToRefreshHandler:^{
[controller dataDidRefresh:nil];
}];
_block 的标记告诉编译器,这个变量在 block 里面需要做特殊处理。
一般来说,在 block 中用的变量值是被复制过来的,所以对于变量本身的修改并不会影响这个变量的真实值。而当我们用 __block 标记的时候,表示在 block 中的修改对于 block 外也是有效地。
时间: 2024-10-24 15:47:17