我想显示文字,我希望能够知道用户触摸此文本的位置。因为文本可能很长,我想使用UITextView,以便包装和一切都将被处理。当触摸开始或移动时,我想要我自己的事件处理。我的问题是放大镜和选择/选择所有菜单都在中断我的touchesMoved事件。
如何禁用放大镜,但仍然启用了用户交互,以便我可以检测到触摸?
答案 0 :(得分:4)
您必须创建一个子类并覆盖这两个函数以禁用select/select all/copy/
和magnifying
<强> select/select all/copy/
强>:
- (BOOL)canPerformAction:(SEL)action withSender:(id)sender
参考: https://stackoverflow.com/a/1429320/1526023
<强> magnifying
强>:
- UILongPressGestureRecognizer
- (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer
答案 1 :(得分:1)
我建议检查 gestureRecognizers 属性。
你会在数组中找到很多它们,并且可能想要将它们全部删除,或者找到触发你要截取的事件并删除/替换它的那些。
我用它从UITextField中删除了复制/粘贴和放大镜功能
答案 2 :(得分:0)
您可以尝试这里提供的提示: How disable Copy, Cut, Select, Select All in UITextView