ios - 从Swift访问Objective-C block

标签 ios objective-c swift objective-c-blocks swift-block

我在FileManagerHelper中有以下Objective-C代码:

+(void)getMyVideoObject:(NSString *)videoId completion:(void (^)(MyVideoObject *myVideoObject, NSError *error)) completionBlock
{

}

对于从Objective-C进行的调用:
 [FileManagerHelper getMyVideoObject:videoId completion:^(MyVideoObject *myVideoObject, NSError *error) {

}];

但是,如何从Swift调用此getMyVideoObject?
FileManagerHelper.getMyVideoObject( .....?

最佳答案

1)添加到桥接头文件中(将.swift文件添加到Objective-C项目时生成的-Bridging-Header.h文件)

#import "FileManagerHelper.h"

2)在快速代码中使用以下调用
FileManagerHelper.getMyVideoObject("id") { (video, error) in

}

关于ios - 从Swift访问Objective-C block ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60104927/

相关文章:

ios - 有没有办法测试辅助功能缩放是否打开?

ios - NSXMLParserDelegate objective-c

iphone - 当 View Controller 弹出时,MKMapView 使应用程序崩溃

iphone - 以编程方式移动 digdog MapKitDragAndDrop 框架中的引脚

ios - TableViewController 图像大小调整 Swift 4 Xcode 9

swift - 使用或扩展类更好吗? ( swift )

swift - Xcode+Swift : UIImageView automatically produces white empty space. 如何删除它?

iphone - 是否有 iOS API 调用来访问 iPhone 上的 UMTS pdp 接口(interface)?

objective-c - 如果未触摸,UiView 会淡出

ios - 从 iOS 共享 Facebook Open Graph Action 时出错(不安全链接)