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

Posted

技术标签:

【中文标题】如何在 Swift 3 中使用 NSSecureCoding 解码字符串?【英文标题】:How to decode string using NSSecureCoding in Swift 3? 【发布时间】:2016-08-03 10:16:27 【问题描述】:

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

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) 不会这样做。这是一个测试错误吗?我错过了什么?

【问题讨论】:

【参考方案1】:

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

试试这个:

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

【讨论】:

以上是关于如何在 Swift 3 中使用 NSSecureCoding 解码字符串?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Swift 3 中使用 NSLocale 获取国家代码

如何在 Swift 3 中使用 UnsafeMutablePointer?

如何在 Swift 3.0 中使用 keysSortedByValue?

如何使用 Swift 3 在 UIView 中覆盖 requiresConstraintBasedLayout?

如何在 swift 3 中使用现有的 SQLite? (FMDB)

我如何在 XCODE 8、Swift 3 中使用 UIAutomation