用值替换空的 UITextfield
Posted
技术标签:
【中文标题】用值替换空的 UITextfield【英文标题】:Replace empty UITextfield with value 【发布时间】:2020-04-30 07:15:30 【问题描述】:我正在构建一个仅限数字的文本字段。
我希望当文本字段中的文本为“”时将其替换为“0”。
我只能以只读方式获取当前文本。
提前致谢
【问题讨论】:
【参考方案1】:将editingChanged
委托方法添加到textField
如下:
在viewDidLoad()
方法中添加如下代码:
textField.addTarget(self, action: #selector(textFieldChanged(_:)), for: .editingChanged);
然后,实现方法如下:
@objc func textFieldChanged(_ textField: UITextField)
if let text = textField.text, text.isEmpty
textField.text = "0"
每次textField内容发生变化时都会调用上述方法。
您还可以将textField
的初始文本设置为“0”。只需在viewDidLoad()
方法中使用textField.text = "0"
。
【讨论】:
【参考方案2】:如果您希望在完成编辑后更新文本字段,您可以像这样设置操作
然后
@IBAction func editingDidEnd(_ txtTest: UITextField)
if txtTest.text == ""
txtTest.text = "0"
【讨论】:
【参考方案3】:textField.addTarget(self, action: #selector(handleTextField(_:)), for: .editingChanged)
@objc private func handleTextField(_ textField: UITextField)
if textField.text == ""
textFiled.text = "0"
【讨论】:
以上是关于用值替换空的 UITextfield的主要内容,如果未能解决你的问题,请参考以下文章