【问题标题】:How can i access objective c block in a swift file如何在 swift 文件中访问目标 c 块
【发布时间】:2017-04-21 05:48:58
【问题描述】:

我可以通过桥接头访问 swift 项目中的目标 c 类。但是我怎样才能实现那个对象 c 类的回调方法。

示例:我在 ClassObjectiveC 中有一个回调 decleare

typedef void(^PlayCompleteCallBack)(BOOL playSuccess, NSString *processfileName);
@property (nonatomic, copy)   PlayCompleteCallBack playCompleteCallBack;

在目标c中

我可以这样访问

ClassObjectiveC *obj = [[ClassObjectiveC alloc]init];

[obj setPlayCompleteCallBack:^(BOOL playSuccess, NSString *processfileName){

 }]; 

但是在 Swift 中,当我想访问这个回调时,我该如何实现它。谢谢

【问题讨论】:

  • 尝试用 obj Xcode 输入会提示你
  • 我必须在 swift 文件中使用它。实际上它在一个我必须快速访问的框架中
  • 是的,我可以调用其他方法。但不能听回调。滴滴没有得到语法
  • 不,我已经这样做了,它不起作用

标签: objective-c swift callback


【解决方案1】:

以这种方式制作playCompleteCallBack

let yourObject = ClassObjectiveC()
yourObject.playCompleteCallBack = { (success, name) in
    //Access success and name here
}

【讨论】:

    【解决方案2】:

    试试这个语法

     obj.playCompleteCallBack = {(_ playSuccess: Bool, _ processfileName: String) -> Void in
             //Your code
         }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-04-25
      • 1970-01-01
      • 1970-01-01
      • 2016-06-30
      • 1970-01-01
      • 1970-01-01
      • 2019-11-13
      相关资源
      最近更新 更多