停止NSDictionary的块枚举

时间:2012-07-17 04:43:44

标签: iphone objective-c ios ipad

如果我执行以下操作,如何在此处停止枚举?我认为文档说要设置stop = TRUE。但当我在街区内做到这一点时,它说这不是无法分配的。

 [self.visibleViewControllers_ enumerateKeysAndObjectsUsingBlock:^(id key, id obj, BOOL *stop) {

            if (CGRectIntersectsRect(visibleRect, viewRect)) {
               //break here
            }
        }];

2 个答案:

答案 0 :(得分:26)

*stop设为YES

[self.visibleViewControllers_ enumerateKeysAndObjectsUsingBlock:^(id key, id obj, BOOL *stop) {

            if (CGRectIntersectsRect(visibleRect, viewRect)) {
               *stop =YES;
               return;
            }
        }];

答案 1 :(得分:2)

对于SWIFT 2:

Dict.enumerateKeysAndObjectsUsingBlock { (key, value, stop) -> Void in

            if(//Something){
                 //Do Something
            }
            else {
                //To Stop
                stop.memory = true
            }
        }