我正在制作一个应用程序,其中一部分具有某种计算器功能。
用户有 4 个 UITextField
,他们可以在其中输入数字,所有这些都应该是可选的 - 但如果它们被留为空,它应该表现得好像他们已经输入了“0”进入该领域。
我该如何设置这个默认值 0?
当前设置为 UITextField
中的初始值为 0,但这可以由用户删除(呈现错误),并且不允许占位符文本。
最佳答案
您已将 textField 的默认值设置为“0”
textField.text = "0"
现在您需要检查用户是否更改了 textField
以及更改是否导致了一个空文本字段。
func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
guard let textFieldString = textField.text, let range = Range(range, in: textFieldString) else {
return false
}
let newString = textFieldString.replacingCharacters(in: range, with: string)
if newString.isEmpty {
textField.text = "0"
return false
} else if textField.text == "0" {
textField.text = string
return false
}
return true
}
关于ios - 将默认 UITextField 值设置为 0(计算器),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51926523/