我已多次使用过块,但在这种情况下,我怀疑它是否会起作用。
我必须检查一堆节点,看看它们是否可见。然后我构建了这个方法:
- (BOOL)areNodesVisible {
__block BOOL visible = YES;
[self enumerateChildNodesWithName:@"myNode"
usingBlock:^(SKNode *node, BOOL *stop) {
if ([node isHidden]) {
visible = NO;
*stop = YES;
}
}];
return visible;
}
我的问题是该块是异步的,因此该方法将始终返回YES。
我该如何解决?