我创建了一个声明协议(在swift中)的pod
我可以在我的"示例项目中使用此协议" (在swift中),但当我尝试在一个客观的项目中使用它时,它不可用......
我理解我的协议应该是objective-c的桥梁,但它不会出现在MyPod-Swift.h
文件中
我的协议是使用public
关键字声明的。
对于使用我的协议类型的公共财产(委托)来说,这是同样的事情......
我忘了做点什么?任何的想法 ? :)
public protocol MyDelegate: class {
func success(transactionId: String, amount: NSDecimalNumber)
func failure(error: Error?, amount: NSDecimalNumber)
}
解决:应该是
@objc
public protocol MyDelegate {
func success(transactionId: String, amount: NSDecimalNumber)
func failure(error: Error?, amount: NSDecimalNumber)
}
答案 0 :(得分:1)
您是否曾尝试将@objc
添加到声明中?
@objc
public protocol RestoFlashDelegate {
func success(transactionId: String, amount: NSDecimalNumber)
func failure(error: Error?, amount: NSDecimalNumber)
}