Thursday 15 April 2010

Save data of a Label in swift -



Save data of a Label in swift -

i have textfield in settingscontroller can modify selecting name pickerview, problem : when alter text of textfield alter text of label in controller, work when close , reopen app label empty, can't find way save text give pickerview.

my code in settingscontroller

override func viewdidload() { super.viewdidload() var defaults: nsuserdefaults = nsuserdefaults.standarduserdefaults() if allow firstnameisnotnill = defaults.objectforkey("firstname") as? string { self.currencylabel.text = defaults.objectforkey("firstname") string } currencylabel.delegate = self } func currencydoneclicked(sender: uibarbuttonitem) { var myrow = picker.selectedrowincomponent(0) currencylabel.text = pickerdata.objectatindex(myrow) nsstring datamanager.sharedinstance.contenitore = currencylabel.text var defaults: nsuserdefaults = nsuserdefaults.standarduserdefaults() defaults.setobject(self.currencylabel.text, forkey: "firstname") defaults.synchronize() }

datamanager :

import uikit class datamanager: nsobject { class var sharedinstance:datamanager { { struct static { static var instance : datamanager? = nil static var token : dispatch_once_t = 0 } dispatch_once(&static.token) { static.instance = datamanager() } homecoming static.instance! } } var contenitore : string! }

and in other controller :

override func viewdidload() { super.viewdidload() labelcurrency.text = datamanager.sharedinstance.contenitore }

just utilize nsuserdefaults.

nsuserdefaults.standarduserdefaults().setvalue(textfield.text, forkey: "savedtextfield")

then, when start again, populate field in viewdidload or viewwillappear.

if allow text = nsuserdefaults.standarduserdefaults().stringforkey("savedtextfield") { textfield.text = text }

swift label nsuserdefaults savechanges

No comments:

Post a Comment