实现 EditText 禁止复制粘贴菜单

禁止长按事件

ActionMode 回调

反射 android.widget.Editor 修改弹框菜单不显示

/**

* 禁止输入框复制粘贴菜单

*/

public void disableCopyAndPaste(final EditText editText) {

try {

if (editText == null) {

return ;

}

editText.setOnLongClickListener(new View.OnLongClickListener() {

@Override

public boolean onLongClick(View v) {

return true;

}

});

editText.setLongClickable(false);

editText.setOnTouchListener(new View.OnTouchListener() {

@Override

public boolean onTouch(View v, MotionEvent event) {

if (event.getAction() == MotionEvent.ACTION_DOWN) {

// setInsertionDisabled when user touches the view

setInsertionDisabled(editText);

}

return false;

}

});

editText.setCustomSelectionActionModeCallback(new ActionMode.Callback() {

@Override

public boolean onCreateActionMode(ActionMode mode, Menu menu) {

return false;

}

@Override

public boolean onPrepareActionMode(ActionMode mode, Menu menu) {

return false;

}

@Override

public boolean onActionItemClicked(ActionMode mode, MenuItem item) {

return false;

}

@Override

public void onDestroyActionMode(ActionMode mode) {

}

});

} catch (Exception e) {

e.printStackTrace();

}

}

private void setInsertionDisabled(EditText editText) {

try {

Field editorField = TextView.class.getDeclaredField("mEditor");

editorField.setAccessible(true);

Object editorObject = editorField.get(editText);

// if this view supports insertion handles

Class editorClass = Class.forName("android.widget.Editor");

Field mInsertionControllerEnabledField = editorClass.getDeclaredField("mInsertionControllerEnabled");

mInsertionControllerEnabledField.setAccessible(true);

mInsertionControllerEnabledField.set(editorObject, false);

// if this view supports selection handles

Field mSelectionControllerEnabledField = editorClass.getDeclaredField("mSelectionControllerEnabled");

mSelectionControllerEnabledField.setAccessible(true);

mSelectionControllerEnabledField.set(editorObject, false);

} catch (Exception e) {

e.printStackTrace();

}

}

Disable EditText context menu

android edittext不可复制_Android 禁止输入框 EditText 复制粘贴相关推荐

  1. android edittext不可复制_Android中使EditText只读的方法(可恢复编辑状态)

    可以通过以下几种方法实现EditText的只读属性 1. 方法一:使用EditText的android:Editable属性 将EditText的Editable属性设置为false后,EditTex ...

  2. textview 复制粘贴_Android TextView使用剪贴板复制粘贴

    textview 复制粘贴 In this tutorial, we'll implement the copy-paste feature on a TextView in our Android ...

  3. h5页面禁止复制_网页禁止鼠标右键禁止全选复制粘贴的方法

    这篇文章主要为大家详细介绍了网页禁止鼠标右键禁止全选复制粘贴的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,有需要的朋友可以收藏方便以后借鉴. 网页禁止鼠标右键禁止全选复制粘贴有很多种JS方 ...

  4. android edittext不可复制_Android EditText禁止复制粘贴

    1,自定义EditText package com.example.ui; import android.annotation.SuppressLint; import android.content ...

  5. vue-cli使用pdf.js插件浏览pdf文件,禁止下载打印复制粘贴。

    很多项目中都会有预览pdf文件,普通的可以直接使用a标签来实现该功能,但是此预览是浏览器自带的,有时候项目需求中会有禁止用户禁止下载和打印功能,浏览器自带的是无法满足的. 小编在网上找到pdf.js插 ...

  6. 安卓手机如何复制粘贴不重叠_怎么复制粘贴,教您手机怎么复制粘贴

    复制黏贴是日常生活中经常会使用到的功能,手机上我们最常用的功能之一就是复制粘贴,但是很多时候,安卓手机直接复制黏贴是很难的.那么安卓手机如何复制粘贴呢?下面,小编给大家讲解手机复制粘贴的操作技巧. A ...

  7. android 禁用剪切板_Android EditText禁止复制粘贴

    1,自定义EditTextpackagecom.example.ui;importandroid.annotation.SuppressLint;importandroid.content.Conte ...

  8. Android EditText禁止复制粘贴

    1,自定义EditText package com.example.ui; import android.annotation.SuppressLint; import android.content ...

  9. android EditText完美解决禁止输入法表情

    最近有个需求,需要评论的时候禁止输入法的表情输入.然后在网上各种找,发现有些人啊,也是服了,同样的东西反复写,并且还没解决问题,我就想问问,这个你们自己真的动手运行的了,效果实现了吗,还是说,效果实现 ...

最新文章

  1. GitHub App终于来了,iPhone用户可尝鲜,「同性交友」更加便捷
  2. optee3.14 qemu_v8的环境搭建篇(ubuntu20.04)--镜像方式-直接使用
  3. 路由器无法访问目标网络_初设路由器,无法访问管理页面的解决办法_网络设备技术应用...
  4. javascript生成器
  5. 2017年我的阅读书单
  6. 突发,这个国家进入紧急状态!数十年来最严重经济危机、每天停电13小时!外交部发出提醒...
  7. 高德地图的标志放大_点标记-覆盖物-教程-地图 JS API | 高德地图API
  8. python利用集合的无重复性_利用Python程序完成ABAQUS中的一些重复性操作
  9. 力扣-747 至少是其他数字两倍的最大数
  10. MindManager_10 思维导图-软件下载
  11. 电视下载我的android应用未安装不了,安卓系统下载了微信为什么安装不上?总是显示未安装程序,这是怎么回事?...
  12. [渝粤教育] 宁波城市职业技术学院 插花艺术 参考 资料
  13. 怎么在拦截器里接收json对象_九型人格分析:怎么挑选适合的爱人和结婚对象,藏在他的性格里...
  14. 跟着我学习 AI丨语音识别:将语音转为数字信号
  15. 第3章 判断语句进阶
  16. latex 中文书籍常见命令
  17. C++:shared_ptr简介以及常见问题
  18. 什么是长连接、短连接
  19. html如何实现加载动画
  20. 吐血整理 | 肝翻 Linux 中断所有知识点

热门文章

  1. shell 操作(四)
  2. 广西2019全国计算机二级报名,广西2019年3月全国计算机二级考试报名入口已开通...
  3. win7向虚拟机linux传文件,如何实现主机windows与虚拟机liunx之间互传文件
  4. 结合html5+_基于 HTML5 结合互联网+的电力接线图
  5. 免费学python的网课-这些 AI 课网课最具人气!不仅免费、系统,还附带链接 | 资源...
  6. 开课吧python小课学了有用吗-好消息!今天,审计、会计、税务、财务主管彻底沸腾了……...
  7. python没基础能自学吗-没有基础先要自学python,有什么比较好的书推荐?
  8. python画动态图-Python使用matplotlib画动态图
  9. python与excel-超简单:用Python让Excel飞起来
  10. python可以干嘛-python都可以用来做什么