我正在手动将数据输入到结构中。但是该结构不会保存数据。我尝试使用userdefaults,但无法正常工作。我希望数据始终在结构benCarson
中始终显示在标签bad
上。
ViewController 1
struct bad {
static var mm = [String]()
}
ViewController 2
class ViewController2: UIViewController {
@IBOutlet var benCarson: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
benCarson.text = ViewController.bad.mm.map { " \($0)" }.joined(separator:"\n")
}
}
最佳答案
我认为不需要使用struct就可以使用UserDefaults
为了保存
let mm = ["adsa", "safds", "twer", "qwer", "dfas"]
let defaults = UserDefaults.standard
defaults.set(mm, forKey: "SavedStringArray")
defaults.synchronize()
取回
let defaults = UserDefaults.standard
let myarray = defaults.stringArray(forKey: "SavedStringArray") ?? [String]()
benCarson.text = myarray.map { " \($0)" }.joined(separator:"\n")
关于ios - 在结构上使用userdefaults,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46167350/