Swift3 如何保存已按下按钮的状态?
我试过很多代码,但都不起作用。我想保存按下按钮的状态 我有两个DL单选按钮,我用它在两种语言之间切换第一个按钮是英语,第二个按钮是阿拉伯语。我正在使用DLRadioButton框架 我想在打开viewcontroller时按下英语按钮,按钮的指示灯被按下,指示灯变为黑色;当我更改为阿拉伯语时,我想在关闭应用程序并打开它时保存按钮的状态,指示灯被按下,我已尝试使用,用户默认,但不起作用,例如,此代码Swift3 如何保存已按下按钮的状态?,swift3,uibutton,ios11,swift4,Swift3,Uibutton,Ios11,Swift4,我试过很多代码,但都不起作用。我想保存按下按钮的状态 我有两个DL单选按钮,我用它在两种语言之间切换第一个按钮是英语,第二个按钮是阿拉伯语。我正在使用DLRadioButton框架 我想在打开viewcontroller时按下英语按钮,按钮的指示灯被按下,指示灯变为黑色;当我更改为阿拉伯语时,我想在关闭应用程序并打开它时保存按钮的状态,指示灯被按下,我已尝试使用,用户默认,但不起作用,例如,此代码 override func viewDidLoad() { super.viewDidLo
override func viewDidLoad() {
super.viewDidLoad()
UserDefaults.standard.bool(forKey: "issaved")
UserDefaults.standard.bool(forKey: "issaveded")
}
@IBAction func circularbutton(_ sender: UIButton) {
if sender.tag == 0 || sender.isSelected == !sender.isSelected {
let use = UserDefaults.standard
use.set( sender.isSelected, forKey: "issaved")
use.synchronize()
} else if sender.tag == 1 || sender.isSelected == sender.isSelected {
let usee = UserDefaults.standard
usee.set( sender.isSelected, forKey: "issaveded")
usee.synchronize()
}
}
要从
UserDefaults
读取值的两行都不执行任何操作,因为您没有使用结果
- 为按钮创建两个插座,并在Interface Builder中连接它们
@IBOutlet weak var button1 : UIButton! @IBOutlet weak var button2 : UIButton!
- 在
中,将viewDidLoad
中的值分配给按钮UserDefaults
override func viewDidLoad() { super.viewDidLoad() button1.isSelected = UserDefaults.standard.bool(forKey: "issaved") button2.isSelected = UserDefaults.standard.bool(forKey: "issaveded") }