使用Dictionary时,Method不能是@objc协议的成员

时间:2016-05-05 15:06:13

标签: objective-c swift dictionary delegates protocols

我正在迅速编码。我写了一个协议

@objc protocol ServerDelegate {
    optional func onDownloadDataComplete (downloadedData data : [Dictionary<String,Any>],result : ResultType,error : String)
}

首先我收到&#34;方法不能是@objc协议的成员,因为参数2的类型不能在Objective-C&#34;中表示。为我的枚举,但我通过添加@objc修复它。现在我收到了这个字典数组。怎么解决?

1 个答案:

答案 0 :(得分:0)

由于@ originaluser2说@objc无法在NSObject中表示,所以我创建了一个新类,添加了我需要的数据成员,继承了if (shouldClearData()) { for (String name: databaseList()) deleteDatabase(name); for (String name: PREFERENCE_FILES) getSharedPreferences(name, MODE_PRIVATE).edit().clear().apply(); } 并返回了它的数组而不是字典现在一切都很好。