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