gpt4 book ai didi

swift - NSNumber swift 字典到 userdefaults swift3

转载 作者:搜寻专家 更新时间:2023-11-01 06:32:20 25 4
gpt4 key购买 nike

我正在尝试将 swift 字典 [NSNumber : NSNumber] 保存到 UserDefaults。我已经尝试将其转换为 NSDictinonary,但是当我使用 set() 函数时应用程序仍然崩溃。

Key 是一个 beacon minor key (NSNumber)值是 NSTimeinterval 转换为 NSNumber

崩溃:

libc++abi.dylib: terminating with uncaught exception of type NSException

var  recentBeacons: [NSNumber : NSNumber] = [:]

func saveRecentBeaconDict()
{
let recentBeaconKeys = recentBeacons.keys
print("keys type is \(String(describing: recentBeaconKeys.self))")

let recentBeaconsNSDict = recentBeacons as NSDictionary
UserDefaults.standard.set(recentBeaconsNSDict, forKey:"recentBeacons")
}

prints out: keys type is LazyMapCollection< Dictionary < NSNumber, NSNumber >, NSNumber >(_base: [46171: 1501585588.173543], _transform: (Function))

最佳答案

尝试以下答案。

    var  recentBeacons: [NSNumber : NSNumber] = [:]
func saveRecentBeaconDict()
{
let archivedObject = NSKeyedArchiver.archivedData(withRootObject: recentBeacons as NSDictionary)
UserDefaults.standard.set(archivedObject, forKey: "recentBeacons")

let data = UserDefaults.standard.object(forKey: "recentBeacons") as? Data
if let _data = data {

let allData = NSKeyedUnarchiver.unarchiveObject(with: _data) as! NSDictionary
print(allData)
}
}

关于swift - NSNumber swift 字典到 userdefaults swift3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45435537/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com