【发布时间】:2016-01-20 00:03:56
【问题描述】:
这是我的快速代码:
import UIKit
protocol ViewDelegate {
func ViewClicked()
}
class DetailView: NSObject {
class func display(viewName: String){
}
class func show(tmpDelegate: ViewDelegate?){
}
class func showWith2params(viewName: String,tmpDelegate: ViewDelegate?){
}
}
这是我的项目的一部分-Swift.h 由 XCode7.0.1 生成:
SWIFT_CLASS("_TtC15testClassMethod10DetailView")
@interface DetailView : NSObject
+ (void)display:(NSString * __nonnull)viewName;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
如何使用带有自定义委托参数的 swift 类函数?
【问题讨论】:
-
我认为您需要在协议和类以及需要用于 objc 类的每个函数之前添加 @objc
-
@BjörnRo Ro 我试过了,但没用。但是谢谢
-
也是协议中的func声明?
-
@BjörnRo 它有效。谢谢!关键是在协议声明前加上
@objc -
酷,比我写这个作为一个anweser ;)
标签: ios objective-c swift bridge