我的文本现在将文本字段保存在 uiviewcontroller 中,但是当转到前一个 View Controller 而不是返回原始 View Controller 时,文本将被删除。如何保存文本,以便在输入和保存文本时文本保持不变。
import UIKit
class tryingViewController: UIViewController {
@IBOutlet weak var textext: UITextField!
@IBAction func actionaction(_ sender: Any) {
textext.resignFirstResponder()
let myText = textext.text
UserDefaults.standard.set(myText, forKey: "myKey")
}
}
最佳答案
您可以使用多个选项。
- 使用核心数据
- 在主视图 Controller 中保存文本
- 将其存储在
UserDefaults
鉴于您已经在使用 UserDefaults
,我将坚持使用它并展示一个示例:
@IBOutlet weak var textField: UITextField!
let standardText = "standardText"
override func viewDidLoad() {
super.viewDidLoad()
textField.addTarget(self, action: #selector(textDidChange), for: .editingChanged)
textField.text = UserDefaults.standard.value(forKey: standardText) as? String
}
func textDidChange(sender: UITextField) {
UserDefaults.standard.set(sender.text ?? "", forKey: standardText)
}
关于ios - 如何保存 uitextfield 以便文本从 View Controller 保留到 View Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41028896/