Swift:参数类型'[String:ValueType]’不符合预期类型’Any
发布时间:2020-12-14 04:41:22 所属栏目:百科 来源:网络整理
导读:我有以下代码尝试将字典转换为NSData: func dataFromDictValueType(dict: [String:ValueType]) - NSData { return NSKeyedArchiver.archivedDataWithRootObject(dict)} 编译器给我传递dict作为参数的错误: 参数类型'[String:ValueType]’不符合预期类型’
我有以下代码尝试将字典转换为NSData:
func dataFromDict<ValueType>(dict: [String:ValueType]) -> NSData { return NSKeyedArchiver.archivedDataWithRootObject(dict) } 编译器给我传递dict作为参数的错误: 参数类型'[String:ValueType]’不符合预期类型’AnyObject’ 编辑: @ vadian的解决方案对我有用. 我还尝试将dict转换为NSDictionary: return NSKeyedArchiver.archivedDataWithRootObject(dict as NSDictionary) 但是得到这个错误: 无法将'[String:ValueType]’类型的值转换为强制中的’NSDictionary’类型 为什么? 解决方法
由于archivedDataWithRootObject期望AnyObject只是转换字典
func dataFromDict<ValueType>(dict: [String:ValueType]) -> NSData { return NSKeyedArchiver.archivedDataWithRootObject(dict as! AnyObject) } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |