the*_*end 2 swift swift-protocols
当尝试符合NSItemProviderReading时,我收到以下错误:

该方法的协议定义如下:
public static func object(withItemProviderData data: Data, typeIdentifier: String) throws -> Self
Run Code Online (Sandbox Code Playgroud)
协议静态函数返回类型"Self",我试图将其更改为实际类的名称,但之后它将不再符合NSItemProviderReading.
如何归还"自我"?
它附加为!自我,但后来显示2个错误和这个警告,它看起来很混乱,因为它似乎想要恢复到以前的状态,在这种情况下返回类的实例NameData
Self在协议中要求协议的一致性使用它们自己的类型.所以,你需要改变Self,以NameData当你符合这在你的类扩展的方法的返回类型.
extension NameData: NSItemProviderReading {
static func object(withItemProviderData data: Data, typeIdentifier: String) throws -> NameData {
return NameData(name: "Test")
}
}
Run Code Online (Sandbox Code Playgroud)
还有一件事,你需要创建NameData类final.
| 归档时间: |
|
| 查看次数: |
897 次 |
| 最近记录: |