如何保存选中的 UIButton(显示复选标记)并将其加载到 iOS?
How do I save a UIButton being selected (showing checkmark) and load it in iOS?
我是初学者,以下是我到目前为止的代码。单击按钮时,它会在复选标记和空框之间切换(这很好)。但是,退出应用程序时,按钮不会保存被选中的状态(勾选)。
附上我的全部代码,方便大家看清楚是怎么回事。
import UIKit
class ViewController: UIViewController {
@IBOutlet weak var checkMarkButton: UIButton!
let save = "save"
override func viewDidLoad() {
super.viewDidLoad()
if UserDefaults.standard.bool(forKey: "save") == true {
checkMarkButton.setImage(#imageLiteral(resourceName: "greyChecked"), for: .normal)
}else{
checkMarkButton.setImage(#imageLiteral(resourceName: "greyUnchecked"), for: .normal)
}
}
@IBAction func checkMarkAction(_ sender: UIButton) {
UserDefaults.standard.set(true, forKey: "save")
}
}
直接给出图片名称,我测试了我的答案是有效的
override func viewDidLoad() {
super.viewDidLoad()
if UserDefaults.standard.bool(forKey: "checkBoxSave01") == true {
checkBoxButton1.setImage(#imageLiteral(resourceName: "id"), for: .normal)
}else{
checkBoxButton1.setImage(#imageLiteral(resourceName: "phone"), for: .normal)
}
}
var isFirstClick = true
@IBAction func checkBoxTapped(_ sender: UIButton) {
if isFirstClick{
checkBoxButton1.setImage(#imageLiteral(resourceName: "id"), for: .normal)
UserDefaults.standard.set(true, forKey: "checkBoxSave01")
ifFirstClick = false
}else{
checkBoxButton1.setImage(#imageLiteral(resourceName: "phone"), for: .normal)
UserDefaults.standard.set(false, forKey: "checkBoxSave01")
isFirstClick = true
}
}
单击按钮后 checkBoxSave01
键值将一直为真,直到您删除该应用程序。
我是初学者,以下是我到目前为止的代码。单击按钮时,它会在复选标记和空框之间切换(这很好)。但是,退出应用程序时,按钮不会保存被选中的状态(勾选)。
附上我的全部代码,方便大家看清楚是怎么回事。
import UIKit
class ViewController: UIViewController {
@IBOutlet weak var checkMarkButton: UIButton!
let save = "save"
override func viewDidLoad() {
super.viewDidLoad()
if UserDefaults.standard.bool(forKey: "save") == true {
checkMarkButton.setImage(#imageLiteral(resourceName: "greyChecked"), for: .normal)
}else{
checkMarkButton.setImage(#imageLiteral(resourceName: "greyUnchecked"), for: .normal)
}
}
@IBAction func checkMarkAction(_ sender: UIButton) {
UserDefaults.standard.set(true, forKey: "save")
}
}
直接给出图片名称,我测试了我的答案是有效的
override func viewDidLoad() {
super.viewDidLoad()
if UserDefaults.standard.bool(forKey: "checkBoxSave01") == true {
checkBoxButton1.setImage(#imageLiteral(resourceName: "id"), for: .normal)
}else{
checkBoxButton1.setImage(#imageLiteral(resourceName: "phone"), for: .normal)
}
}
var isFirstClick = true
@IBAction func checkBoxTapped(_ sender: UIButton) {
if isFirstClick{
checkBoxButton1.setImage(#imageLiteral(resourceName: "id"), for: .normal)
UserDefaults.standard.set(true, forKey: "checkBoxSave01")
ifFirstClick = false
}else{
checkBoxButton1.setImage(#imageLiteral(resourceName: "phone"), for: .normal)
UserDefaults.standard.set(false, forKey: "checkBoxSave01")
isFirstClick = true
}
}
单击按钮后 checkBoxSave01
键值将一直为真,直到您删除该应用程序。