我目前有一系列UITextFields从IB连接到我的Swift代码。用户可以选择点击按钮进入下一个视图,但我的应用程序需要填写所有字段。下面是检查文本字段是否为空的方法:
func findEmptyField() -> UITextField? {
for field in fieldsCollection {
if field.text.isEmpty {
return field
}
}
//Return here a value signifying that no fields are empty.
}
此方法仅部分实施,因为我不确定如何&如果它们都不是空的,那么返回什么。此函数的调用者检查返回值并根据它是否返回字段执行操作。我隐约明白,Swift的选项功能可以帮助解决这个问题,但我不确定如何。
我应该如何使fn返回,以便调用者识别出该集合中的所有字段都不为空?
答案 0 :(得分:1)
您已经完美地设置了 - 因为您已经返回了可选的UITextField?
,如果没有空文本字段,则返回nil
:
func findEmptyField() -> UITextField? {
for field in fieldsCollection {
if field.text.isEmpty {
return field
}
}
return nil
}
调用它时,请注意您将获得可选值。用可选的绑定解开它:
if let emptyField = findEmptyField() {
// focus emptyField or give a message
} else {
// all fields filled, ok to continue
}