谁能告诉我如何使一个EditText不可编辑通过XML?我试着设置android:editable为false,但是
已弃用;而且 但是没有成功。
谁能告诉我如何使一个EditText不可编辑通过XML?我试着设置android:editable为false,但是
已弃用;而且 但是没有成功。
当前回答
正如你提到的,android:editable已被弃用。android:inputType="none"应该被用来代替,但它不工作,由于一个bug (https://code.google.com/p/android/issues/detail?id=2854)
但是你可以通过使用focusable来达到同样的效果。
通过XML:
<EditText ...
android:focusable="false"
</EditText>
从代码:
((EditText) findViewById(R.id.LoginNameEditText)).setFocusable(false);
其他回答
我使用EditText.setFocusable(false),如果我想编辑,再次设置为true。
正如在其他回答中提到的,您可以执行setEnabled(false),但由于您正在询问如何通过XML设置它,下面是如何做到这一点。
将以下属性添加到您的EditText:
android:enabled="false"
让你的编辑文本
EditText editText;
editText.setKeyListener(空);
会起作用,但就是听不到按键。
用户可以在编辑文本上看到光标。
你可以尝试editText.setEnabled(false);
这意味着用户看不到游标。简单地说,它将成为TextView。
将此添加到您的EditText xml文件:
<EditText ...
android:clickable="false"
android:cursorVisible="false"
android:focusable="false"
android:focusableInTouchMode="false">
</EditText>
它的效果与android:editable="false"相同。对我有用,希望对你也有用。
只需使用android:enabled="false"即可。这也会给EditText一个外观,使它看起来不可编辑。