iphone – 检测UITextField丢失的焦点

iphone – 检测UITextField丢失的焦点,第1张

概述我搜索了很多google和heree,但没有什么有用的. 我有两个文本字段,我无法识别哪一个失去了焦点. 我尝试了所有的选项,但没有. 这里的textFieldDidEndEditing: - (void) textFieldDidEndEditing:(UITextField *)textField { NSLog(@"%@", [textField state]); NSLog(@ 我搜索了很多Google和heree,但没有什么有用的.

我有两个文本字段,我无法识别哪一个失去了焦点.
我尝试了所有的选项,但没有.

这里的textFIEldDIDEndEditing:

- (voID) textFIEldDIDEndEditing:(UITextFIEld *)textFIEld {    NSLog(@"%@",[textFIEld state]);  NSLog(@"%d",[textFIEld isSelected]);  NSLog(@"%d",[textFIEld isFirstResponder]);  NSLog(@"%d",[textFIEld isHighlighted]);  NSLog(@"%d",[textFIEld istouchInsIDe]);  if ( ![textFIEld isFirstResponder] || ![textFIEld isSelected] ) {  //if ( [textFIEld state] != UIControlStateSelected) {    NSLog(@"not selected!");    [...]    // remove vIEw / etc...  }}

所有NSLog返回0!为什么?!?

我如何侦测丢失的焦点?这个方法每次调用我按下一个键盘按钮,而不是结束!
有什么办法吗

编辑:
我不想从文本切换,但是当我在屏幕上单击时,我想要检测到丢失的焦点. (键盘会关闭或不启用,插入符号不存在于textfIEld上)!

谢谢.

解决方法 要处理在文本字段外敲击,您可以在视图控制器中覆盖touchesBegan:

- (voID)touchesBegan:(NSSet *)touches withEvent:(UIEvent *) event{    UItouch *touch = [[event alltouches] anyObject];    if ([textFIEld1 isFirstResponder] && (textFIEld1 != touch.vIEw))    {        // textFIEld1 lost focus    }    if ([textFIEld2 isFirstResponder] && (textFIEld2 != touch.vIEw))    {        // textFIEld2 lost focus    }    ...}
总结

以上是内存溢出为你收集整理的iphone – 检测UITextField丢失的焦点全部内容,希望文章能够帮你解决iphone – 检测UITextField丢失的焦点所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1085258.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-27
下一篇 2022-05-27

发表评论

登录后才能评论

评论列表(0条)

保存