简体   繁体   English

UserDefaults不显示数据吗?

[英]UserDefaults Does not show up data?

I am Presenting a View with some text field and button where user can enter some data in that text field and when the user will click the save button that data will be saved in NSUserdefaults and show it on another view but its not working.. Any suggestion plz.. 我正在展示一个带有一些文本字段和按钮的视图,用户可以在其中输入一些数据,当用户单击“保存”按钮时,数据将保存在NSUserdefaults中,并在另一个视图上显示,但无法正常工作。建议

View2 code Which is presented over view1 在view1上方显示的View2代码

//The default key value
var _billingAddress = "billingAddress"

//The address text field in present view
@IBOutlet weak var address: UITextField!


//The button action code
 @IBAction func saveBtn(sender: AnyObject) {

    let defaults = NSUserDefaults.standardUserDefaults()
    defaults.setValue(address.text, forKey:_billingAddress)

 }

View1 code to access the key value data View1代码访问键值数据

//Label where i want to show the saved value
@IBOutlet weak var billingAddresh: UILabel!

    let defaults = NSUserDefaults.standardUserDefaults()
    if let name = defaults.stringForKey(_billingAddress)
        //Here it shows the error use of unresolved identifier _billingAddress
    {
        billingAddresh.text = name
    }

Its not showing any value Thank you for the help.. 它没有显示任何价值谢谢您的帮助。

when you add on that time we need the defaults.synchronize() 当您添加该时间时,我们需要使用defaults.synchronize()

let defaults = NSUserDefaults.standardUserDefaults()
defaults.setValue(address.text, forKey:"billingAddress")

// if you want use else ignore 
defaults.synchronize()

retrieve is 检索是

let defaults = NSUserDefaults.standardUserDefaults()
if let name = defaults.stringForKey("billingAddress") // not "_billingAddress"
{
    billingAddresh.text = name
}

// no need in here 
defaults.synchronize()

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM