Kronometre uygulaması yapıyorum ve kullanıcı uygulamayı kapatmadan önce başlangıç tarihini kaydetmem gerekiyor ve kullanıcı uygulamayı tekrar açtığında geri almam gerekiyor. Örneğin, kullanıcı kronometreyi başlatır ve ardından uygulamayı kapatırsa ve sonra bir süre sonra uygulamayı tekrar açarsa, uygulama kronometre çalışıyorsa açılış ve kapanış arasındaki süreyi tekrar eklemelidir.NSUserDefaults'tan bir NSDate nesnesi nasıl alınır ve atar?
Görüntü denetleyicimde bunu işleyen iki işlev oluşturdum. Ben StackOverflow'daki burada mesajların bir çift ile gitti
override func viewWillAppear(animated: Bool)
{
let startTimedefault:NSUserDefaults = NSUserDefaults.standardUserDefaults()
let startTimesaved:NSDate = startTimedefault.objectForKey("start time") // This line is buggy
if(launchBool == true)
{
timer = NSTimer.scheduledTimerWithTimeInterval(1, target: self, selector: "fireStopWatch", userInfo: nil, repeats: true)
startTime = startTimesaved
}
if(launchBool == false)
{
timer.invalidate()
}
}
override func viewWillDisappear(animated: Bool)
{
NSUserDefaults.standardUserDefaults().setObject(launchBool, forKey: "Start/Stop")
NSUserDefaults.standardUserDefaults().setObject(startTime, forKey: "start time")
NSUserDefaults.standardUserDefaults().setObject(elapsedTime, forKey: "elapsed time")
}
:
What's the optimum way of storing an NSDate in NSUserDefaults?
iOS - Not able to store NSDate into NSUserDefaults
NSDate' –
Bu, "Anahtarınız" kullanıcıAyarlarına zaten kaydedilmemişse kilitlenecektir. Olarak kullanmalı mıyım? NSDate' yerine – Inn0vative1
@ Inn0vative1, –