我正在寻找一种解决方案来禁用长按编辑菜单(复制/粘贴)以及用于编辑文本框的双击全选功能。我已经以类似的方式阅读了有关此问题的一些解决方案,但是,需要更进一步。
对于这个应用程序,我需要阻止用户在我的应用程序上使用复制/粘贴功能,并且需要一种方法来禁用此功能,该功能适用于 2.3 API 以及在较新的平板电脑上使用时。我正在使用 NexusOne 手机设备和 Galaxy 平板电脑进行测试。(minSDK 为 8,目标为 10)
目前我正在使用这个(例如):edittextPassword.setLongClickable(false); -禁用弹出编辑菜单,太好了!
此方法确实适用于电话设备以防止弹出编辑菜单。在平板电脑上,长按操作也会禁用此功能。然而,平板电脑具有更新的双击功能,可以选择所有文本并打开编辑菜单。旧 API 有没有办法取消/捕获/禁用新 API 功能或防止双击手势?
更新:使用连接到 GestureDetector 的 setLongClickable(false) 和 setOnTouchListener 的组合(感谢 Nikola 的建议),我可以捕获/取消双击和长按打开的编辑菜单。
下一部分要弄清楚的是......在三星手机(Galaxy S,目前不确定其他设备)上,当您点击一个字段时,您会看到一个光标和一个浮动光标指针按钮(正确名称?? )。单击此指针按钮是打开编辑菜单的另一种方法。有谁知道如何禁用这个?我唯一的解决方法是使用 TextWatcher 清除 BeforeTextChanges 和 AfterTextChanges 上的剪贴板。这样可以确保即使您进入“复制/粘贴”菜单,剪贴板也会被清除并且没有可粘贴的内容。