0
請使用此代碼獲得幫助,我們將非常感謝您提供的任何幫助。我已經嘗試使用nsuserdefaults(但nsuserdefaults不保存結構),但是當應用程序重新啓動時,值消失,我試圖使用nsuserdefaults(但nsuserdefaults不保存結構)。是否有另一種方法來保存這些值,即使應用程序重新啓動?在NSUserdefault中存儲結構swift
NSObject的內容保存到NSUserDefaults的
import UIKit
var plannerMgr : plannerManager = plannerManager()
struct plan
{
var planName = "Un-Named"
var planDescription = "Un-Described"
}
var pNameArray = NSMutableArray()
var pDescArray = NSMutableArray()
class plannerManager: NSObject {
var plans = [plan]()
func addPlan(pName: String, pDesc: String) {
plans.append(plan(planName: pName, planDescription: pDesc))
pNameArray.addObject(pName)
pDescArray.addObject(pDesc)
defaults.setObject(pNameArray, forKey: "pNameArray")
defaults.setObject(pDescArray, forKey: "pDescArray")
defaults.synchronize()
}
}
...爲充分利用NSUserDefaults的
func getPlans() {
if let tempArray1 = defaults.objectForKey("pNameArray") as? NSMutableArray {
if (tempArray1.count > 0) {
pNameArray = tempArray1
}
}
if let tempArray2 = defaults.objectForKey("pDescArray") as? NSMutableArray {
if (tempArray2.count > 0) {
pDescArray = tempArray2
}
}
for name1 in pNameArray {
for desc1 in pDescArray {
println("add Plan: name1 = \(name1) && desc1 = \(desc1) **")
addPlan(name1 as! String, pDesc: desc1 as! String)
}
}
}
我的主要問題是,當我致電第二位FUNC(getPlans)應用程序崩潰,並且控制檯提到了有關使用不可變對象的可變方法的一些事情。
感謝幫助很多,不得不做一些額外的 –