如何从 EditText 禁用复制和粘贴
Posted
技术标签:
【中文标题】如何从 EditText 禁用复制和粘贴【英文标题】:How To Disable Copy and Paste from EditText 【发布时间】:2018-02-24 11:22:44 【问题描述】:我正在使用以下代码,但当光标闪烁并单击该粘贴按钮显示时,它不起作用。
edittext.setCustomSelectionActionModeCallback(new ActionMode.Callback()
public boolean onPrepareActionMode(ActionMode mode, Menu menu)
return false;
public void onDestroyActionMode(ActionMode mode)
public boolean onCreateActionMode(ActionMode mode, Menu menu)
return false;
public boolean onActionItemClicked(ActionMode mode, MenuItem item)
return false;
);
我不想隐藏光标。
我该如何解决这个问题?
【问题讨论】:
How to disable copy/paste from/to EditText的可能重复 您的 XML 中有粘贴按钮还是在 EditText 本身中打开的菜单? @Sufian 它会打开 EditText 本身 您在哪个 android API 级别上运行它? @Sufian 25 牛轧糖 7.1 【参考方案1】:试试这个:
edittext.setLongClickable(false);
edittext.setTextIsSelectable(false);
【讨论】:
【参考方案2】:您可以在 xml 文件中使用 longClickable,例如:
<EditText
... your edittext
android:longClickable = "false"/>
或者你可以在java中尝试
youredittext.setLongClickable(false);
【讨论】:
【参考方案3】:你可以试试这个,就像下面的代码一样让你的 editext
LongClickable
false
来自 XML
android:longClickable="false"
来自 JAVA
edittext.setLongClickable(false);
【讨论】:
【参考方案4】:edittext.setCustomSelectionActionModeCallback(new ActionMode.Callback()
public boolean onPrepareActionMode(ActionMode mode, Menu menu)
return false;
public void onDestroyActionMode(ActionMode mode)
public boolean onCreateActionMode(ActionMode mode, Menu menu)
return false;
public boolean onActionItemClicked(ActionMode mode, MenuItem item)
return false;
);`
【讨论】:
这与OP在他的问题中所写的相同。另外,请添加一些文字来解释您添加的代码。以上是关于如何从 EditText 禁用复制和粘贴的主要内容,如果未能解决你的问题,请参考以下文章
Android - 防止edittext复制/粘贴并双击全选[重复]