如何在 Swift 3 中使用 NSSecureCoding 解码字符串?

How to decode string using NSSecureCoding in Swift 3?

我目前正在尝试 iOS 10 Beta 并决定将我的 Swift 代码转换为 Swift 3。到目前为止,我能够使用 [= 安全地解码字符串14=]

coder.decodeObjectOfClass(NSString.self, forKey: CoderKeys.code) as! String

转换为 Swift 3 后,Xcode 出现以下错误:

'decodeObjectOfClass(_:forKey:)' is unavailable in Swift: use generic 'decodeObjectClass(_:forKey:)'

正如我所提到的,我正在使用 NSSecureCoding,所以不幸的是 decodeObject(forKey: String) 不会这样做。这是测试版错误吗?我错过了什么?

似乎 decodeObjectOfClass:forKey: 在 Swift 中作为通用 decodeObject(of:forKey:) 导入 3.

试试这个:

coder.decodeObject(of: NSString.self, forKey: CoderKeys.code) as String?