用户默认值与文本字段的比较

时间:2018-09-19 07:53:00

标签: ios swift

我正在尝试将登录名密码值与UserDefault值进行比较。但是发生错误,无法在此处执行布尔操作。 请谁能帮助我比较这两个值。 我该如何比较这些值?

4 个答案:

答案 0 :(得分:2)

if let savedPassword = UserDefaults.standard.string(forKey: "password") {

    let enteredPassword = textField?.text

    if savedPassword == enteredPassword {
        // Do stuff.
    }
}
else {
    // Failure.
}

我不建议在UserDefaults中以纯文本格式存储密码。

有许多关于此主题的教程,例如https://medium.com/ios-os-x-development/securing-user-data-with-keychain-for-ios-e720e0f9a8e2

答案 1 :(得分:1)

请使用以下代码段

if passwordField.text == UserDefaults.standard.string(forKey:"password"){
  print("Same Password")
}

谢谢

答案 2 :(得分:0)

您必须指定对象类型

if UserDefaults.standard.string(forKey: "password") == passwordLabel.text {
    // ...
    }

答案 3 :(得分:0)

我认为您应该将结果从“任意”转换为“用户默认值”中的字符串

foo-0