Ios 在结构上使用userdefaults
我正在将数据手动输入结构。但是,结构没有保存数据。我尝试使用userdefaults,但它不起作用。我希望数据始终显示在标签Ios 在结构上使用userdefaults,ios,string,struct,swift3,nsuserdefaults,Ios,String,Struct,Swift3,Nsuserdefaults,我正在将数据手动输入结构。但是,结构没有保存数据。我尝试使用userdefaults,但它不起作用。我希望数据始终显示在标签benCarson上,如果它位于结构中,则该标签错误 视图控制器1 struct bad { static var mm = [String]() } 视图控制器2 class ViewController2: UIViewController { @IBOutlet var benCarson: UILabel! override func vi
benCarson
上,如果它位于结构中,则该标签错误
视图控制器1
struct bad {
static var mm = [String]()
}
视图控制器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")
用于检索
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")
我认为不需要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")
用于检索
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")
无需强制同步EBTW Swift是一种类型推断语言,使用nil合并运算符时无需指定数组类型。只需传递一个空数组??[]
无需强制同步EBTW Swift是一种类型推断语言,使用nil合并运算符时无需指定数组类型。只需传递一个空数组??[]
以大写字母开头命名结构是Swift惯例以大写字母开头命名结构是Swift惯例