我在Swift中有一个实现协议的类:
class SwiftClass: SwiftProtocol {
func test() {
NSLog("Test");
}
}
这是简单的协议
@objc protocol SwiftProtocol {
func test()
}
当我导入它并使用Objective-C类时,它会出现此错误
使用未声明的标识符'SwiftClass'
有没有办法导入实现协议的类?我做错了什么?
答案 0 :(得分:1)
当您创建一个源自Objective-C类的Swift类时, 类及其成员 - 属性,方法,下标和 初始化程序 - 与Objective-C兼容是自动的 可从Objective-C获得。
这与您观察到的一致:如果SwiftClass
扩展NSObject
,它可以正常工作。以这种方式解决问题有什么不妥吗?