Swift如果声明

时间:2017-08-09 23:17:39

标签: swift if-statement

我有一个注册视图控制器,1)在用户有提交按钮后使空文本字段文本变为红色,2)使用UIView摇动空文本字段。

// if registered button is clicked and textfields are empty
if usernameTxt.text!.isEmpty || passwordTxt.text!.isEmpty || emailTxt.text!.isEmpty || fullnameTxt.text!.isEmpty  {    

    // display red placeholders for empty textfields
    usernameTxt.attributedPlaceholder = NSAttributedString(string: "Username", attributes: [NSForegroundColorAttributeName: UIColor.red])    
    passwordTxt.attributedPlaceholder = NSAttributedString(string: "Password", attributes: [NSForegroundColorAttributeName: UIColor.red])    
    emailTxt.attributedPlaceholder = NSAttributedString(string: "Email", attributes: [NSForegroundColorAttributeName: UIColor.red])  
    fullnameTxt.attributedPlaceholder = NSAttributedString(string: "Full Name", attributes:
            [NSForegroundColorAttributeName: UIColor.red])

}

// shake username textfield if it is empty
if usernameTxt.text == "" {
    usernameTxt.shake()
}

// shake password textfield if it is empty
if passwordTxt.text == "" {
    passwordTxt.shake()
}

// shake email textfield if it is empty
if emailTxt.text == "" {
    emailTxt.shake()
}

// shake fullname textfield if it is empty
if fullnameTxt.text == "" {
    fullnameTxt.shake()
}

} else {

    // remove keyboard
    self.view.endEditing(true)
}

但是,如果文本字段为空,它仍然会执行红色占位符文本以及文本字段抖动,但它也会在"之后执行代码。 }其他{"

有没有人对重新编写此代码有任何建议,以便其他代码之后的代码不被执行?提前致谢

1 个答案:

答案 0 :(得分:1)

您需要将其他条件链接到if语句。目前你将它们分开了。对于Exmaple:

if (condition) {

} else {

}

否则他们不属于同一评估。总而言之,您似乎只是遇到语法问题。

干杯。