Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/41.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 触摸UITextField rightView上的事件_Iphone_Objective C_Ios - Fatal编程技术网

Iphone 触摸UITextField rightView上的事件

Iphone 触摸UITextField rightView上的事件,iphone,objective-c,ios,Iphone,Objective C,Ios,我有几个文本字段,它们会影响注册表。当用户点击submit并输入无效信息时,错误的字段会用图标标记为rightView 我使用的rightView是一个自定义UIImageView子类,它具有以下特性: - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event 覆盖以显示警报,告知用户此字段的确切错误 问题是touchesbeent方法从未被调用。为什么当我触摸视图时,它没有接收到触摸事件?您需要启用图像的用户交互以实现

我有几个文本字段,它们会影响注册表。当用户点击submit并输入无效信息时,错误的字段会用图标标记为rightView

我使用的rightView是一个自定义UIImageView子类,它具有以下特性:

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
覆盖以显示警报,告知用户此字段的确切错误


问题是touchesbeent方法从未被调用。为什么当我触摸视图时,它没有接收到触摸事件?

您需要启用图像的用户交互以实现

[imageView setUserInteractionEnabled:YES];

您需要使图像的用户交互成为真实

[imageView setUserInteractionEnabled:YES];

您应该检查您的视图是否位于视图的上层(它没有被另一个透明视图覆盖) 并检查视图的用户交互设置为ENABLED 还要检查是否直接点击视图,只有在视图边界内点击时才会调用此方法
我还建议您阅读一些有关UITapGestureRecognitor类的信息,这可能是一种更方便的使用方式…

您应该检查您的视图是否位于视图的上层(它没有被另一个Transparent视图覆盖) 并检查视图的用户交互设置为ENABLED 还要检查是否直接点击视图,只有在视图边界内点击时才会调用此方法 我还建议您阅读一些关于UITapGestureRecognitizer类的信息,这可能是一种更方便的使用方法