检查现有的 TextField resignFirstResponder?
Posted
技术标签:
【中文标题】检查现有的 TextField resignFirstResponder?【英文标题】:Check for exiting TextField resignedFirstReponder? 【发布时间】:2020-04-30 18:52:50 【问题描述】:是否可以检查 TextField 是否已被辞退?
我有 3 个文本字段,并使用 (resignFirstResponder) 和 (becomeFirstResponder) 的返回键循环浏览它们
但是有没有办法检查一个字段是否已经辞职?我注意到我的一些应用程序测试人员不使用返回键而是手动单击字段,这样我之前的字段就不会按应有的方式保存数据。
检查用户是否点击离开 TextField 的最佳方法是什么?是进入下一个文本字段还是暂时离开?
【问题讨论】:
【参考方案1】:isFirstResponder Apple Docs
返回一个布尔值,指示此对象是否是第一响应者。
var isFirstResponder: Bool get
如何使用
if txtField.isFirstResponder
// do whatever you want to
如果你想在textField改变焦点时保存数据..你应该实现文本字段的委托方法
在辞去第一响应者之前,文本字段会调用它的 委托的 textFieldShouldEndEditing(_:) 方法。使用该方法 验证当前文本。
func textFieldShouldEndEditing(_ textField: UITextField) -> Bool
在你的情况下,你可以检查哪个 texfield 结束编辑
func textFieldShouldEndEditing(_ textField: UITextField) -> Bool
if textField == textfield1
// save
Apple Docs for textFieldShouldEndEditing
【讨论】:
我正在寻找辞职的第一响应者?每当一个字段不再是第一响应者时。 是否可以检查 TextField 是否已被辞职...检查字段是否是第一响应者 ....以上是关于检查现有的 TextField resignFirstResponder?的主要内容,如果未能解决你的问题,请参考以下文章
在 Spring Security 中检查现有的 HttpSession
Swift - 如何检查现有的 Core Data Store iOS