您能否给我任何建议,如何使用UISwitch和NSUserDefaults在Swift 3中实现“记住我”功能。任何视频或网站教程也将受到欢迎:)
这对我有用
我连接了以下插座
loginTxt - username textfield
passwordTxt - password textfield
rememberSwitch - switch
Run Code Online (Sandbox Code Playgroud)
码
func viewDidLoad() {
rememberSwitch.addTarget(self, action: #selector(self.stateChanged), for: .valueChanged)
let defaults: UserDefaults? = UserDefaults.standard
// check if defaults already saved the details
if defaults?.bool(forKey: "ISRemember") {
loginTxt.text = defaults?.value(forKey: "SavedUserName")
passwordTxt.text = defaults?.value(forKey: "SavedPassword")
rememberSwitch.setOn(true, animated: false)
}
else {
rememberSwitch.setOn(false, animated: false)
}
}
func stateChanged(_ switchState: UISwitch) {
let defaults: UserDefaults? = UserDefaults.standard
if switchState.isOn() {
defaults?.set(true, forKey: "ISRemember")
defaults?.set(loginTxt.text, forKey: "SavedUserName")
defaults?.set(passwordTxt.text, forKey: "SavedPassword")
}
else {
defaults?.set(false, forKey: "ISRemember")
}
}
Run Code Online (Sandbox Code Playgroud)