我正在尝试制作一个使用登录系统的应用。我已经为用户名和密码创建了一个数组。但我需要测试密码是否正确。如何创建一个if语句来测试数组内部的值?如果您需要,这是我的代码。
import UIKit
var namesArray = [String]()
var passWordArray = [String]()
class ViewController: UIViewController {
var username = "Ege"
var password = "Gürkan"
var trueFalse = true
@IBOutlet weak var idTextField: UITextField!
@IBOutlet weak var passwordTextField: UITextField!
@IBOutlet weak var trueWrongLabel: UILabel!
@IBAction func buttonPressed(sender: AnyObject) {
if idTextField.text == "Ege" && passwordTextField.text == "Gürkan" {
self.performSegueWithIdentifier("geçiş", sender: self)
} else {
trueWrongLabel.text = "Wrong id/pw"
idTextField.resignFirstResponder()
passwordTextField.resignFirstResponder()
trueWrongLabel.textColor = UIColor.redColor()
idTextField.text = nil
passwordTextField.text = nil
}
}
override func viewDidLoad() {
super.viewDidLoad()
NSUserDefaults.standardUserDefaults().setObject(namesArray, forKey: "nameArray")
var recalledNameArray = NSUserDefaults.standardUserDefaults().objectForKey("nameArray")! as NSArray
NSUserDefaults.standardUserDefaults().setObject(passWordArray, forKey: "passWordArray")
var recalledPassWordArray: AnyObject? = NSUserDefaults.standardUserDefaults().objectForKey("passWordArray")
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
在说明的行中if isTextField.text == "Ege"
我想测试用户刚刚在文本字段中输入的内容是否存在值。我该怎么办?
PS:我对编程很新,所以请不要在解释时使用复杂的术语
答案 0 :(得分:0)
这是开始编程的东西。
有很多方法可以做到这一点。
一种直接的方法是创建一个包含name属性和password属性的结构。然后创建一个结构数组。当用户输入用户名和密码时,使用filter命令查找包含匹配用户名的结构,然后检查密码是否正确。
如果你对Swift过滤器功能感到不舒服(我还没有使用它),那么你也可以自己遍历数组寻找匹配。
答案 1 :(得分:0)
为什么要使用Array for userName和Array for Password? 你怎么知道那个userName的密码? 我建议你使用Dictionary这是最好的解决方案。 所以一个用户名和密码的字典和值将是:
key:value
Ege:Gürkan
,代码为:
for (key,value) in dic
{
if (key == idTextField.text && value == passwordTextField.text)
{
println("true")
}
}
我希望这就是你想要的!。