我已经创建了UITextField的自定义子类CustomTextView。
我创建了一个
private var tapGesture = UITapGestureRecognizer()
customTextView类中的
在initInView中,我有以下代码
tapGesture.addTarget(self, action: "tapTextField:")
self.addGestureRecognizer(tapGestureRecognizer)
CustomTextView实现UIGestureRecognizerDelgate
现在,当我使用iOS模拟器并单击文本字段时,函数tapTextField永远不会被调用。
我在这里缺少什么?我看到类似的帖子,但没有一个回答我的问题。我无法对那些评论,因为我还没有声誉。所以问一个新问题。
PS:这是否与设置的firstResponder有关?这是我正在处理的其他人的代码,所以我可能错过了一些东西。让我知道我应该寻找什么
相关的堆栈溢出问题:
答案 0 :(得分:1)
我不太了解,但请尝试将此"tapTextField:"
更改为此"tapTextField"
,并确保您没有任何参数/参数/在您的{{ {1}}功能。
此外,它看起来像
"tapTextField"
应为self.addGestureRecognizer(tapGestureRecognizer)
答案 1 :(得分:0)
您可以尝试一些方法来调试问题。
1>确保tapTextField
和tapTextField:
没有错误,即您正在使用参数添加选择器,但是您已经实现了相同的方法而没有任何参数。
2 - ;确保没有任何其他透明视图遮盖您的自定义uitextfield
。
3 GT;在xcode控制台中打印po yourTextFieldName
以查看您的文本字段是否实际添加了任何手势识别器。
希望这有帮助