我对如何更改块内的实例变量感到很困惑。
接口文件(.h):
@interface TPFavoritesViewController : UIViewController {
bool refreshing;
}
实施:
__weak TPFavoritesViewController *temp_self = self;
refreshing = NO;
[myTableView addPullToRefreshWithActionHandler:^{
refreshing = YES;
[temp_self refresh];
}];
正如您可能猜到的那样,当我尝试更改块内部的刷新ivar时,我会收到保留周期警告。如果没有出错,我该怎么做?
答案 0 :(得分:6)
您对refreshing
的分配是对self
的隐含引用,它是以下内容的简写:
self->refreshing = YES;
因此,循环警告。将其更改为:
temp_self->refreshing = YES;