1、首先想到在xml中设置android:editable="false",但是如果想在代码中动态设置可编辑状态,没有找到对应的函数

2、然后尝试使用editText.setFocusable(false);和editText.setEnabled(false);设置不可编辑状态;editText.setFocusable(true);和 editText.setEnabled(true);设置可编辑状态。

发现在editText.setFocusable(false);和editText.setEnabled(false);时不可编辑,但是editText.setFocusable(true);和 editText.setEnabled(true);也是不可编辑的,感觉这个时候EditText控件高亮度了,但是没有焦点

3、最后尝试使用editText.setFocusable(false);和editText.setFocusableInTouchMode(false);设置不可编辑状态;editText.setFocusableInTouchMode(true);editText.setFocusable(true);editText.requestFocus();设置可编辑状态

这个可以实现可编辑和不可编辑,但是又发现一个问题,在不可编辑状态如果常按住控件,可以进行粘帖操作,不知道怎么可以不能进行粘帖啊

--------------------------------------------------------

其实可以直接通过setEnable(true)编辑;setEnable(false)编辑

----------------------------------------------------------

android:editable is deprecated: Use an <EditText> to make it editable
android:editable is deprecated: Use inputType instead

分析:关于EditText控件的read-only问题,即: 无法通过UI更改其中的内容, 但可以选定部分内容, 进行复制.在早期的sdk, EditText有Editable属性, 现在这个属性已经deprecated了.
 
解决方法:
其实只需一行代码就能搞定et.setKeyListener(null);
注意, 这里不是setOnKeyListener, 而是setKeyListener. 此方法是TextView的成员, 调用后的效果完全符合预期, 并且获得焦点后不会弹出输入法. 
 
下面是官方文档的解释

Sets the key listener to be used with this TextView. This can be null to disallow user input. Note that this method has significant and subtle interactions with soft keyboards and other input method: see KeyListener.getContentType() for important details. Calling this method will replace the current content type of the text view with the content type returned by the key listener.
 
Be warned that if you want a TextView with a key listener or movement method not to be focusable, or if you want a TextView without a key listener or movement method to be focusable, you must call setFocusable again after calling this to get the focusability back the way you want it.

转载于:https://www.cnblogs.com/exmyth/p/4667462.html

EditText设置可以编辑和不可编辑状态相关推荐

  1. Android中控件的显示和隐藏以及EditText的可编辑和不可编辑状态

    一.控件的显示和隐藏 在Android中,怎么让控件可见和不可见呢? 其实,不论是显示和隐藏,都有两种方式,一种是在布局文件xml里设置,还有一种就是在我们的java代码中设置. 1. 可见(visi ...

  2. excel打开密码忘记了_如何设置EXCEL文件打开和编辑密码

    欢迎关注支持,谢谢!!! <在日常办公中,重要的EXCEL资料不希望被他人打开或修改的话,可以通过设置EXCEL文件打开和修改密码来避免出现意外.> 工具原料: 需要设置打开和修改密码的. ...

  3. Qtablewidget设置某一列不可编辑

    设置Qtablewidget第一列不可编辑,第二列不可编辑.试了很多方式才实现,记录一下,以免忘记 def InsertTableWidget(self,column1,column2):rowcou ...

  4. UEditor使用 设置不可编辑 设置可以编辑 (从不可编辑转换为可以编辑)

    直接用用官方方法,UE.getEditor('editor').setDisabled('fullscreen'); 可以成功设置不可编辑: 但是,直接使用UE.getEditor('editor') ...

  5. tinymce富文本实现可编辑和不可编辑状态

    tinymce插件实现可编辑和不可编辑状态 啊哈哈,别想了!!!看看孩子的简单方法吧 首先,看官方文档,没找到ba 其次百度搜一搜,这个,那个看一堆,完全没必要兄弟姐妹们! 动动脑子!!! 遮罩层啊, ...

  6. 计算机休眠状态播放音乐,怎么设置win10中关村系统进入睡眠状态后音乐继续播放...

    大家离开电脑一段时间后,ghost windows10系统也会依据网友设置时间自动进入睡眠或待机状态.但是有windows10系统网友反馈进入睡眠状态后播放音乐也会自动停止,需要手动按下键盘或移动鼠标 ...

  7. html表格无法编辑,html 可编辑表格

    场景:HTML+JS兑现可编辑表格 HTML+JS实现可编辑表格 实现可视化编辑表格操作... HTML文件: 编辑表格数据 可编辑的表格 序号 商品名称 数量 单价 合计 1 C 0 0 0 2 D ...

  8. mapgis编辑属性结构编辑不了_MapGIS67操作手册(3-17)MapGIS67编辑线属性结构的方法...

    下面我们给每条河流,添加对应的名称属性,如黄河.长江等. 1. 单击"线编辑"菜单下"参数编辑"下的"修改线属性"命令,如下图所示: 2. ...

  9. 腾讯文档服务器异常 编辑内容暂无法保存,腾讯文档怎么编辑不了 编辑不了解决方法...

    核心提示:腾讯文档设置权限的入口在哪里?1,当我们登陆腾讯文档后,在主页位置点击任意一篇文档2,此时注意页面的右上角位置,可以看到三个主要菜单"分享"."权限" ...

最新文章

  1. PAT1127 如何根据后序遍历中序遍历建树?
  2. 使用数字示波器DS6104测量交流信号的幅值和相位
  3. codewars068 - Convert string to camel case
  4. C# switch嵌套语法
  5. 如何通过一个结构体成员变量的地址找到该结构体的首地址?[备忘]
  6. 可视化:动态气泡图,拿走不谢!
  7. 开课吧学python靠谱吗-学设计?学Python?看看我的人生是如何开挂!!!
  8. 2021年下半年软考网络工程师真题答案解析
  9. poi解析excel文件(支持xls和xlsx)java学习版
  10. 基于马尔萨斯的人口模型的一个Logistic模型(MATLAB)
  11. 《管理的实践》全书结构
  12. 自然语言处理——基于预训练模型的方法——第2章 自然语言处理基础
  13. 移动前端开发人员必知必会:移动设备概述
  14. Java微信公众号开发之微信公众平台账号申请注册
  15. 迄今为止见过最好的职业规划
  16. Jquery 模板插件 jquery.tmpl.js 的使用方法(2):嵌套each循环,temp调用(使用预编译的模板缓存)...
  17. wps透视表列总计移到顶部_数据透视表运行总计百分比
  18. pageadmin已经过时_为何激光光盘已经过时了
  19. 自制经典闪灯电路板详细过程
  20. [福禄克] Fluke同轴电缆测试模块DSX-CHA003 COAX

热门文章

  1. 最近的问题汇总(至2010/10/6 12:00)
  2. 怎样理解“道不同,不相为谋”这句话呢。。。
  3. qlineedit 设置界面不能输入_一个类似QQ的登陆界面为什么两个输入QLineEdit的上下距离太远...
  4. simpledateformat格式_大厂都是怎么用Java8代替SimpleDateFormat?
  5. imwrite函数 matlab_用matlab做一个脉动磁势分解的动画
  6. 金九银十加薪季,测试题预热一波。
  7. 2021年四川省政府工作报告:促进5G、大数据、区块链等技术与传统产业融合发展
  8. 以太坊上已有十个DeFi协议的锁仓量超过10亿美元
  9. SAP License:2021年了!还不知道 SAP顾问的职业前景?
  10. 赛锐信息:SAP ABAP 环境