正如大多数人一样,我正在将现有的应用程序转换为swift,并且有些功能无法直接转换,因此我不得不复制几个Objective-C类并设置桥接头。所有这一切都完成了,我可以调用函数,但是当我调用它们时,我无法弄清楚如何包含回调并从此方法的回调中获取值。以下是我到目前为止所得到的。
这是Objective-C文件中的typedef和方法
typedef void (^DictionaryAndStatusRecievedCallBack)(BOOL status, NSDictionary *dictionary);
-(void)verifyLoginCredentialsWithLoginName:(NSString *)loginName Passphrase:(NSString *)passPhrase callback:(DictionaryAndStatusRecievedCallBack)callback;
这就是我在swift文件中调用它的方式
var serviceManager : MobileServiceManager = MobileServiceManager()
typealias onCompleteBlock = (status:Bool?, values:NSDictionary?)->Void
serviceManager.verifyLoginCredentialsWithLoginName("username", passphrase: "password", callback: ??)
我似乎无法弄清楚在回调区域放什么,我正在尝试一种类型别名,因为我看到另一篇文章提到但我仍然无法让它工作。
答案 0 :(得分:4)
var serviceManager : MobileServiceManager = MobileServiceManager()
serviceManager.verifyLoginCredentialsWithLoginName("username", passphrase: "password", callback: { (status, values) in
/* Your code*/ })