NSUserDefaults 显示存储的数据

NSUserDefaults Displaying Stored Data

我正在尝试采用 NSUserDefaults.standardUserDefaults 将数据存储到 iOS 设备中的方法。我知道这不是最好的方法,但我只是尝试练习(我知道当您重新启动模拟器或从设备中删除应用程序时数据会被删除)。我的主要目标是获取存储在 iOS 设备中的数据,然后在提交后将其拉回显示在另一个视图控制器上。我想我可以将它显示为一个标签,但是当我在不同的视图控制器中存储和提取这些信息时,我仍然无法回忆起这些信息。抱歉,如果这些信息不够,我稍后可以提供更多信息。

我正在将值输入文本字段

@IBOutlet weak var userNameTextField: UITextField!

然后我一键提交数据

@IBAction func submitButton(sender: AnyObject) {
    let userName = userNameTextField.text;
    NSUserDefaults.standardUserDefaults().setObject(userName, forKey: "userName")
    NSUserDefaults.standardUserDefaults().synchronize()
}

同步是必要的还是仅在提交多个文本字段时才需要?

同样,我只想获取提交的数据并能够 see/view/display 在另一个视图控制器页面上。

要保存然后检索数据,您需要执行如下操作:

 let textToSave = userNameTextField.text;
 let defaults = NSUserDefaults.standardUserDefaults()
 defaults.setObject(textToSave, forKey: "myKey")

然后检索它并设置标签文本(例如)这样做:

let defaults = NSUserDefaults.standardUserDefaults()
myLabel.text = defaults.stringForKey("myKey")

stringForKey 方法 returns 您之前保存在该密钥中的任何内容