0

我的代码现在将新条目放入其数组中。当用户点击模拟器上的主页按钮并返回到原始视图控制器时,它可以完美运行。但是,当视图控制器被转移到另一个 vc 并返回到原始 vc 并输入一个新条目时,所有先前的条目都将被删除并保存下来。基本上问题是当用户切换类并返回 userDefault 时被新的 userdefault 覆盖。

import UIKit

class ViewController: UIViewController {
    var persons:[Person] = [Person]()
    @IBOutlet var txt: UITextField!
    @IBOutlet var label: UILabel!

    @IBAction func add(_ sender: Any) {
        let judo = Person.init(name: txt.text! )
        self.persons.append(judo)
        label.text = String(describing: persons)
        UserDefaults.standard.set(label.text, forKey: "name")
    }

    override func viewDidLoad() {
        if let name = UserDefaults.standard.value(forKey: "name") as? String {
            label.text = name
        }

    }

    struct Person :  CustomStringConvertible  {
        var name: String
        static var myStruct = [String]();
        var description: String {
            return   "\(name)"
        }
    }
}
4

0 回答 0