Arrays 应用程序重新启动时阵列未保存。持久数据的问题
我试图保存一个数组,每当我重新加载应用程序时,数组都是空的 我尝试过用户默认值和核心数据。每次我构建一个数组时,当我加载应用程序时,它都是空的。我不确定保存阵列的位置,也不确定是否是通过iAction添加到阵列导致了问题Arrays 应用程序重新启动时阵列未保存。持久数据的问题,arrays,swift,save,persistence,Arrays,Swift,Save,Persistence,我试图保存一个数组,每当我重新加载应用程序时,数组都是空的 我尝试过用户默认值和核心数据。每次我构建一个数组时,当我加载应用程序时,它都是空的。我不确定保存阵列的位置,也不确定是否是通过iAction添加到阵列导致了问题 firstArray: [Double] = [] @IBAction func userSubmit(_ sender: Any) { oneArray() func oneArray(){ if selected == "Breakfast" { i
firstArray: [Double] = []
@IBAction func userSubmit(_ sender: Any) {
oneArray()
func oneArray(){
if selected == "Breakfast" {
if let firstArrays = Double(glucoseReading.text!) {
//append new element to Array
firstArray.append(firstArrays)
print(breakfastSugarsArray)
}
}
}
我希望能够在应用程序重新启动时保存阵列,而不是在每次加载应用程序时阵列开始为空。我的问题可能是我不知道在哪里保存数组,或者如何保存
我希望能够在应用程序重新启动时保存数组,并且不会在每次加载应用程序时数组开始为空。每次触发
用户提交(…)
时,它都会检查所选的值,如您的示例所示,检查glucosereding.text
中是否有一些双精度数据,然后检索保存在UserDefault中的数组并用新值更新它
@IBAction func userSubmit(_ sender: Any) {
if selected == "Breakfast" {
if let glucoseData = Double(glucoseReading.text!) {
// retrieve from UserDefault if none create an empty array
let glucoseListData = UserDefaults.standard.array(forKey: "glucoseListData") as? [Double] ?? [Double]()
// store in UserDefault
glucoseListData.append(glucoseData)
UserDefaults.standard.set(glucoseListData, forKey: "glucoseListData")
// check print outputs in Xcode logs
println("Glucose data list: \(glucoseListData)")
}
}
}
每次触发userSubmit(…)
时,它都会检查所选的值,如您的示例中所示,检查glucoseReading.text中是否有一些双重数据,然后检索保存在UserDefault中的数组并用新值更新它
@IBAction func userSubmit(_ sender: Any) {
if selected == "Breakfast" {
if let glucoseData = Double(glucoseReading.text!) {
// retrieve from UserDefault if none create an empty array
let glucoseListData = UserDefaults.standard.array(forKey: "glucoseListData") as? [Double] ?? [Double]()
// store in UserDefault
glucoseListData.append(glucoseData)
UserDefaults.standard.set(glucoseListData, forKey: "glucoseListData")
// check print outputs in Xcode logs
println("Glucose data list: \(glucoseListData)")
}
}
}