1

我有一个基本上使用这个的方法:

-(void)myMethodwithDuration:(NSTimeInterval)time{
[UIView animateWithDuration:time
                     animations:^{
                          // do thing here
                     }
                     completion:^(BOOL finished){
                          //do completion stuff here
                     }
     ];

我不知道该怎么做是编写/打包一个参数,以便我可以编写我想要执行的代码,然后像我一样将它简单地传递给方法time

任何帮助表示赞赏。谢谢

4

1 回答 1

1

接受具有void返回值和BOOL参数的块:

- (void)myMethodWithBlock:(void (^)(BOOL someCoolBool))block {
    if (block) {
        block(YES);
    }
}

调用它:

[self myMethodWithBlock:^(BOOL someCoolBool) {
    if (hasParams) {
        //....
    }
}];

快速参考:FBS.com

于 2015-01-23T17:08:07.423 回答