Swift: 检查 uitextfield 是否存在

Swift: Checking for the existence of a uitextfield

我有一个控制器,它将具有可变数量的文本字段。在按下按钮时,我想检查是否存在,是否为空,并检查输入的字符数。

我正在尝试以下方法,如果 homePhone 存在则效果很好

if homePhone?.text != ""{
if countElements(homePhone1.text) != 10{
    validInput = false
    validationError = "Home Phone must be 10 digits"
}
}

但是当文本字段不存在时(移动)我得到一个致命错误

if mobilePhone?.text != ""{
if countElements(mobilePhone.text) != 10{
    validInput = false
    validationError = "Mobile Phone must be 10 digits"
}
}

fatal error: unexpectedly found nil while unwrapping an Optional value

显然我没有正确地进行检查,可选项和展开不断地让我绊倒。

这将检查您的可选变量是否为 nil,以便您可以安全地解包它,实际上它会为您完成。

if let value = myOptionalVariable{
    //my optionalVariable is not nill i can do whatever i want
    value.text = "Yaay"
}

您可以打开文本框并检查它是否存在:

if let mobilePhoneField = mobilePhone{
  if mobilePhoneField.text != ""{
    if countElements(mobilePhoneField.text) != 10{
        validInput = false
        validationError = "Mobile Phone must be 10 digits"
    }
  }
}