我正在研究保存数据的过程, 因为我的数据很小,所以我想保存在本地数据存储中。 我想要一个制作时间表。
因为我有一个 35 个按钮和标签(每个按钮和标签都是成对的),所以我现在使用 UIButton 标签。我在使用其他本地数据“标签”时遇到问题。
我厌倦了在全局 swift 文件(相同的 swift 文件)上创建新功能。但它不能调用标签,因为标签只能在按下 UIbutton 时使用。 我想在 viewDidLoad() 上使用标签属性,而不仅仅是在 UIbuttonPressed 中。
override func viewDidLoad() {
if let items = UserDefaults.standard.array(forKey: "SubjectList") as? [String] {
subjectArray = items
UITextLabel**1**.text = subjectArray**[1-1]**
}
}
@IBAction func buttonPressed(_ sender: UIButton) {
var textField = UITextField()
let newItem = textField.text!
if sender.tag == 1{
self.subjectArray[sender.tag-1] = newItem
print("1")
}
UserDefaults.standard.set(self.subjectArray, forKey: "SubjectList")
}
最佳答案
为所有配对的标签和按钮创建导出集合
@IBOutlet weak var allLbls:[UILabel]!
@IBOutlet weak var allBts:[UIButton]!
在viewDidLoad
if let items = UserDefaults.standard.array(forKey: "SubjectList") as? [String] {
subjectArray = items
subjectArray.indices?.forEach {
allLbls[$0].text = subjectArray[$0]
allBts[$0].tag = $0
}
}
关于swift - 如何在 Swift 中抓取其他本地标签数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55653208/