Swift:检查是否存在uitextfield

时间:2015-03-11 15:18:51

标签: ios swift optional-values

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

我尝试以下操作,如果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

显然我没有正确地进行检查,选择和解包不断绊倒我。

2 个答案:

答案 0 :(得分:0)

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

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

答案 1 :(得分:0)

您可以解开文本字段并检查它是否存在:

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