如何调用完成块?

用户名

如何在ObjectiveC中调用基于Swift的完成块?

public var completionBlock: IMGLYEditorCompletionBlock?
public typealias IMGLYEditorCompletionBlock = (IMGLYEditorResult, UIImage?) -> Void

这就是我在Swift中称呼它的方式,但是在Objective C中却永远无法使用。

func callEditorViewController() {
   var editorViewController = IMGLYMainEditorViewController()
   editorViewController.highResolutionImage = image
   editorViewController.initialFilterType = .None
   editorViewController.initialFilterIntensity = 0.5
   editorViewController.completionBlock = editorCompletionBlock
}

func editorCompletionBlock(result: IMGLYEditorResult, image: UIImage?) {
   ...
}

这是我的目标C代码,语法错误。

-(void) editorCompletionBlock:(IMGLYEditorResult*)result img:(UIImage*)image{

}

 IMGLYMainEditorViewController *editor = [[IMGLYMainEditorViewController alloc]init];
editor.highResolutionImage = image;

 editor.completionBlock = [self editorCompletionBlock:r img:image];
荣子

调用块很简单:

editor.completionBlock(result, image);

仍然感觉您想设置它:

editor.completionBlock = ^(IMGLYEditorResult result, UIImage *image) {
        // do something meaningful here 
};

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章