我正在尝试使用以下代码使EditText不可编辑:
<EditText android:id="@+id/outputResult"
android:inputType="text"
android:editable="false"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/result" />
我必须添加以下行以使其不可编辑
android:focusable="false"
难道我做错了什么?
非常感谢你
最佳答案
android:editable="false"
应该可以,但是it is deprecated应该使用android:inputType="none"
代替。
或者,如果您想在代码中执行此操作,则可以执行以下操作:
EditText mEdit = (EditText) findViewById(R.id.yourid);
mEdit.setEnabled(false);
这也是一个可行的选择:
EditText mEdit = (EditText) findViewById(R.id.yourid);
mEdit.setKeyListener(null);
如果您要使自己的
EditText
不可编辑,我是否建议您使用TextView
小部件而不是EditText
,因为在这种情况下,使用EditText似乎毫无意义。编辑:,因为我发现
android:editable
已被弃用,所以更改了一些信息,您应该使用android:inputType="none"
,但是在android代码上有一个bug;因此,请检查this。