当应用程序重新启动时,数组不会保存。持久数据的问题
Array is not saving when the app relaunches. Problem with persistent data
我正在尝试保存一个数组,但每当我重新加载应用程序时,该数组都是空的。
我试过 userDefaults 和 core Data。每次我构建一个数组时,当我加载应用程序时它开始为空。我不确定将数组保存在何处以及是否通过 IBAction 添加到数组会导致问题
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)
}
}
}
我希望能够在应用程序重新启动时保存数组,而不是在每次加载应用程序时都让数组开始为空。我的问题可能是我不知道将数组保存到哪里,或者如何保存。
我希望能够在应用程序重新启动时保存数组,而不是在每次加载应用程序时都让数组开始为空。
每次 userSubmit(...)
将被触发时,它将检查 selected
的值,如您的示例所示,检查 glucosReading.text
中是否有一些 Double 数据,然后检索您的数组保存在 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)")
}
}
}
我正在尝试保存一个数组,但每当我重新加载应用程序时,该数组都是空的。
我试过 userDefaults 和 core Data。每次我构建一个数组时,当我加载应用程序时它开始为空。我不确定将数组保存在何处以及是否通过 IBAction 添加到数组会导致问题
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)
}
}
}
我希望能够在应用程序重新启动时保存数组,而不是在每次加载应用程序时都让数组开始为空。我的问题可能是我不知道将数组保存到哪里,或者如何保存。
我希望能够在应用程序重新启动时保存数组,而不是在每次加载应用程序时都让数组开始为空。
每次 userSubmit(...)
将被触发时,它将检查 selected
的值,如您的示例所示,检查 glucosReading.text
中是否有一些 Double 数据,然后检索您的数组保存在 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)")
}
}
}