首页 > 解决方案 > 使用 swift 将数组保存和检索到用户默认值

问题描述

我想将数组从 json 保存到用户默认值,打印时我会得到数组。当我在不同的视图控制器中检索它时,我只得到最后一个数组。那么如何在不同的视图控制器中检索所有数据用户默认值。

这就是我将代码保存在用户默认值中的方式

第一个视图控制器

let kode_pelaksanaan = item["kode_pelaksanaan"].string
UserDefaults.standard.set(kode_pelaksanaan, forKey: "kode_pelaksanaan")

输出:

kode_pelaksanaan : ELR2018120005
kode_pelaksanaan : ELR2018120004
kode_pelaksanaan : ELR2018120003
kode_pelaksanaan : ELR2018120001
kode_pelaksanaan : ELR2018050004

在第二个视图控制器中检索它

let data = UserDefaults.standard.object(forKey: "kode_pelaksanaan")

let parameter =  [
            "request" : "{\"requestMethod\":\"detail_selflearning\",\"user\":\"\(user)\",\"kode_pelaksanaan\":\"\(data ?? "0")\"}"
        ]

输出检索

kode_pelaksanaan : ELR2018050004

我想输出第二个视图控制器

kode_pelaksanaan : ELR2018120005
kode_pelaksanaan : ELR2018120004
kode_pelaksanaan : ELR2018120003
kode_pelaksanaan : ELR2018120001
kode_pelaksanaan : ELR2018050004

标签: arraysjsonswiftswifty-jsonuserdefaults

解决方案


您的代码片段没有提供足够的信息。

这是一个如何从 UserDefaults 存储和检索数组的示例

var myArray = [0,1,2]

override func viewDidLoad()
{
    super.viewDidLoad()
    UserDefaults.standard.set(myArray, forKey: "yourArray")

    let data = UserDefaults.standard.object(forKey: "yourArray")!
    print(data)
}

推荐阅读