我需要在我的Swift项目中使用Objective-C SDK,Objc演示在下面
[[AlipaySDK defaultService] payOrder:orderString fromScheme:appScheme callback:^(NSDictionary *resultDic) {
NSLog(@"reslut = %@",resultDic);
}];
它将一个块传递给payOrder:orderString :: function,但是当我在Swift中调用它时,自动完成帮我生成这些代码
AlipaySDK.defaultService().payOrder(orderString, fromScheme: self.aliAppScheme, callback: { ([NSObject : AnyObject]!) -> Void in
println("Pay Success")
})
在Swift中,闭包输入参数没有名称,在Objc中它命名为resultDict,但在Swift中我不知道如何获取指针,请帮助我,谢谢
答案 0 :(得分:0)
在目标C块中,它采用NSDictionary参数。使用Swift闭包,闭包已经输入,因此您不必将NSDictionary
声明为类型,您甚至不需要-> Void
。同样,, callback:
在Swift中也是无关紧要的,因为尾随闭包因此你的最终产品应该是:
AlipaySDK.defaultService().payOrder(orderString, fromScheme: self.aliAppScheme) { resultDict in
println("Pay Success")
}