如何保存选中的 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")
    }


}

video of what is happening

直接给出图片名称,我测试了我的答案是有效的

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键值将一直为真,直到您删除该应用程序。