当前位置: 移动技术网 > IT编程>移动开发>IOS > Type '' cannot conform to protocol '' because it has requirements that cannot be satisfied

Type '' cannot conform to protocol '' because it has requirements that cannot be satisfied

2018年08月13日  | 移动技术网IT编程  | 我要评论

传真号码查询,新乡个人二手房网,天生恶相

 

我有一个Objective-C协议,我试图在Swift类中实现。例如:

@class AnObjcClass;

@protocol ObjcProtocol <NSObject>
    - (void)somethingWithAnArgument:(AnObjcClass *)arg;
@end

当我尝试在这样的Swift类中符合它时:

@objc class SwiftClass: NSObject, ObjcProtocol {
    // ...
}

我得到以下可怕的编译器错误:

Type '' cannot conform to protocol '' because it has requirements that cannot be satisfied

 

我该如何解决这个问题?

 

 

解决方案:

 

确保该协议引用的任何类都包含在桥接头中。

当协议中使用的某个类型(协议本身,返回类型,参数类型)未包含在Swift桥接头中时,会发生此错误。

由于@class AnObjcClass前向声明,Objective-C类可以愉快地实现此协议,但似乎Swift类不能实现使用仅向前声明的类的协议。

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网