我想写一个类似这样的方法:
+(void)myMethodWithView:(UIView *)exampleView completion:(void (^)(BOOL finished))completion;
我基本上已经从Apple的一种类方法中删除了以下语法UIView
:
+ (void)animateWithDuration:(NSTimeInterval)duration delay:(NSTimeInterval)delay options:(UIViewAnimationOptions)options animations:(void (^)(void))animations completion:(void (^)(BOOL finished))completion;
并希望它像这样使用:
[myFoo myMethodWithView:self.view completion:^(BOOL finished){
NSLog(@"call back success");
}];
我的问题是我该如何实施?如果有人可以指出正确的文档,那将是很好的,并且非常感谢一个非常基本的示例(或者在Stack Overflow上有类似的答案-我找不到)。对于委托人,我还是不太了解,以确定这是否是正确的方法!
我已经在实现文件中给出了一个我期望的粗略示例,但是由于我找不到信息,所以猜测是可行的。
+ (void)myMethod:(UIView *)exampleView completion:(void (^)(BOOL finished))completion {
// do stuff
if (completion) {
// what sort of syntax goes here? If I've constructed this correctly!
}
}
finished
在这个例子中没有人提到参数类型中的参数是不必要的...