快速多条件如果声明带&&手术

时间:2016-06-09 07:24:36

标签: ios swift if-statement

我有4个文本框。我不想让用户让所有这4个文本字段都为空。如何在swift中检查多个条件。我确实喜欢这个,但它给了我一个错误

 if self.txtIncomeAd.text?.isEmpty && self.txtIncomeRec.text?.isEmpty &&
明智的。我能做到这一点的正确方法是什么? 请帮我。 感谢

5 个答案:

答案 0 :(得分:4)

你可以简单地使用isEmpty属性。

if !self.textFieldOne.text!.isEmpty && !self.textFieldTwo.text!.isEmpty && !self.textFieldThree.text!.isEmpty && !self.textFieldFour.text!.isEmpty {
 ...

}

或者您也可以安全地打开文本值并检查它是否为空

if let text1 = self.textFieldOne.text, text2 = self.textFieldTwo.text, text3 = self.textFieldthree.text,text4 = self.textFieldFour.text where !text1.isEmpty && !text2.isEmpty && !text3.isEmpty && !text4.isEmpty {
  ...
  }

或者您可以与Empty""进行比较。串

if self.textFieldOne.text != "" && self.textFieldTwo.text != "" && self.textFieldThree.text != "" && self.textFieldFour.text != ""   {
  ...
}

我们也可以使用Guard

执行此操作
guard let text = self.myTextField.text  where !text.isEmpty else {
  return
}

答案 1 :(得分:1)

if !self.txtIncomeAd.text!.isEmpty && !self.txtIncomeRec.text!.isEmpty && !self.txtIncomeAd.text!.isEmpty && !self.txtIncomeRec.text!.isEmpty
{
    ...
}

答案 2 :(得分:0)

它会给您一个错误,因为textField中的文本是可选的。首先,你必须打开它们。

if let txtIncomeAd = self.txtIncomeAd.text,
     let txtIncomeRec = self.txtIncomeRec.text {
            if txtIncomeAd.isEmpty && txtIncomeRec.isEmpty {
                 // Do Something
            }
} else {
    // Empty text field
}

答案 3 :(得分:0)

您可以使用 isEmpty 布尔属性进行检查。

 if ((inputTextField.text?.isEmpty) != nil && (inputTextField1.text?.isEmpty)!= nil && (inputTextField2.text?.isEmpty)!=nil) {

    }

  if ((inputTextField.text?.isEmpty)! && (inputTextField1.text?.isEmpty)! && (inputTextField2.text?.isEmpty)!) {

    }

答案 4 :(得分:0)

这里有点不同:

extension UILabel {
    var textIsEmpty: Bool { return text?.isEmpty ?? true }
}

class MyClass: UIView {
    let txtIncomeAd = UILabel()
    let txtIncomeRec = UILabel()

    var textFieldsAreNonEmpty: Bool {
        return ![txtIncomeAd, txtIncomeRec].contains { $0.textIsEmpty }
    }
}

let c = MyClass()

c.txtIncomeAd.text = "hello"
c.txtIncomeRec.text = "there"

if c.textFieldsAreNonEmpty {
    print("text fields are valid")
}