我有一个带有清除按钮的UITextField。每当用户在文本字段上辞退第一个响应者时,它就会将更改提交给Web服务。
当用户点击清除按钮时,貌似,文本字段失去了第一个响应者状态,导致调用了didEndEditing委托方法。因此,使用旧的填充值进行webservice调用。然后,清除文本字段,再次调用didEndEditing,再次调用webservice。
为什么会这样发生?我希望clear按钮清空文本,然后在委托上调用didEndEditing,这样你只能得到一条消息。
答案 0 :(得分:0)
如果您指的是UITextField上的内置清除按钮,当用户点击它时会导致文本字段在按钮本身接收到触摸时失去焦点 - 这会触发第一个-didEndEditing
。然后释放清除按钮使其清除文本字段,当实际清除文本时,该文本字段再次调用-didEndEditing
。是的,它肯定不太理想。