android 设置EditText不可编辑内容,响应点击事件
16lz
2021-01-23
方法1:设置
android:editable="false"
这种方法在很久之前已经被弃用了,安卓6.0之后的这句代码没有效果,这个方法无用
方法2:设置
android:enabled="false"
这个方法可以完全达到不可编辑的效果
缺点
1.字体自动变灰色(也就是虚化的效果,和正常字体颜色对比起来很容易让用户知道这个就是不可编辑的,所以个人认为某些时候还可能是个优点)
2。不可以响应点击事件
所以如果以上两个缺点不影响的话,可以使用这个方法,一句代码搞定
方法3:换个思路,如果输入框获取不到焦点的话,是不是就不能编辑了呢,于是尝试了
android:focusable="false"
这种方法确实能让输入框不能获取软键盘弹出,实现不让用户通过软键盘修改输入框,但是,手贱的我(相信也会有这么闲的用户)通过不断的尝试,发现了依然可以修改输入框内容的方法,就是....长按!粘贴!而且,这个方法在点击输入框时,会有光标出现然后马上消失,显然,这样不但在逻辑上没有实现不能编辑,而且在外观上也没有满足。
有没有办法瞒住这些需求呢?
那当然有!
android:cursorVisible="false"//不显示光标android:focusable="false"//失去焦点android:textIsSelectable="false"//文字不可选
这下,就大功告成啦!
更多相关文章
- android 程序开发的插件化 模块化方法
- android studio 3.x 以上版本的Native JNI/NDK 调用c++/c语言程
- Android WebView 不支持 H5 input type="file" 解决方法
- 在Android App开发中实现任意Java方法的拦截
- 关于Android长按出现复制粘贴栏在顶部占位问题解决方法
- Android进程保活方法 --转自腾讯Bugly公众号
- win10通过网线连接树莓派和PC方法(Android things)
- Android root检测方法小结