ios - 用户在文本字段中输入数据后如何立即执行操作?
问题描述
我有一个UITextField
用于输入时间数据(10、15、30 分钟等)的数据。我想在用户手动输入分钟数据之后,然后我会检查它是否大于零(不允许负数或零),如果值低于 1,那么我将显示警报。
我尝试使用下面的代码,但它不起作用:
func textFieldShouldEndEditing(_ textField: UITextField) -> Bool {
if textField == numberReminderTextField {
let valueNumber = Int(numberReminderTextField.text ?? "0") ?? 0
if valueNumber < 1 {
showAlert(alertTitle: "Sorry", alertMessage: "The number you input is invalid, please input the number that more than zero.", actionTitle: "Back")
}
}
return false
}
解决方案
在我看来,你不应该这样做检查textFieldShouldEndEditing
。您可以在控制事件上进行签入textFieldDidEndEditing
或设置自定义观察者。.editingChanged
IE
textField.addTarget(self, action: #selector(yourCheckAction), for: .editingChanged)
如果警报仍未出现,您应该查看您的showAlert
功能。
推荐阅读
- amazon-s3 - 如何将 h265 视频从 ffmpeg 流式传输到 amazon s3?
- c++ - 使用递归函数将小写字母转换为大写字母并执行while
- python - 来自 mix 数据类型的 pandas 将指数或科学数字转换为整数
- python - 从数据框中提取范围开始和范围结束记录
- python - GEKKO多元非线性回归
- spring-boot - 在 Spring ElasticSearch Data 中找不到类 EntityMapper
- python - 在python中将多值字典转换为数据框
- node.js - 如何处理我已经构建的 react 应用程序?
- file - 检查目录中是否存在多个文件时需要二进制运算符
- r - 闪亮的文件输入接受所有文件类型