项目需求是这样的,如果EditText上面已经被setText()内容,则需要禁止输入,防止它被修改。如果没有显示内容,则将EditText设置为可输入状态。
1.首先想到的是在XML文件中设置android:focusable="false",然后在代码中设置此控件属性:editText.setFocusable(true);
经过测试验证:如果有多个EditText,都在xml布局中设置android:focusable="false",当设置可编辑的时候,再设置所有的EditText的属性editText.setFocusable(true);发现,只有第一个EditText可编辑,其他的还是不能编辑
2.看到网上有的说:
editText.setInputType(InputType.TYPE_NULL);来禁止手机软键盘。 editText.setInputType(InputType.TYPE_CLASS_TEXT);来开启软键盘。
如果手机没有自带键盘的话(全触摸的)是可以实现的,如果手机自带键盘还是可以编辑的。
网友评论