我试图做一个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。
如果你想使一个EditText没有从代码编辑:
void disableInput(EditText editText){
editText.setInputType(InputType.TYPE_NULL);
editText.setTextIsSelectable(false);
editText.setOnKeyListener(new View.OnKeyListener() {
@Override
public boolean onKey(View v,int keyCode,KeyEvent event) {
return true; // Blocks input from hardware keyboards.
}
});
}
如果你想删除您的EditText的水平线,只需添加:
editText.setBackground(null);
如果你想让用户复制的EditText的内容,然后使用:
editText.setTextIsSelectable(true);
<EditText
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/editTexteventdate"
android:background="@null"
android:hint="Date of Event"
android:textSize="18dp"
android:textColor="#fff"
android:editable="false"
android:focusable="false"
android:clickable="false"
/>
收藏此
机器人:编辑=“假”
机器人:可聚焦=“假”
机器人:可点击=“假”
它为我工作
我想我迟到了,但使用后在一起,使其工作:
android:inputType="none"
android:enabled="false"
如果你真的想用一个EditText,而不是一个TextView,然后再考虑使用这三种:
android:focusable="false"
android:clickable="false"
android:longClickable="false"
编辑:“longClickable”属性禁用导致“粘贴”长按操作和或“全选”选项,以显示为一个工具提示。
下面添加一行在XML的EditText。
android:editable="false"
android:focusable="false"
android:clickable="false"
它的工作对我来说
EditText edtText = (EditText) findViewById(R.id.yourEditTextId);
edtText.setEnabled(false);
你也可以在XML文件中使用。
我也有这个问题。
我这样做:
<EditText
android:layout_width="30dp"
android:layout_height="wrap_content"
android:id="@+id/yourid"
android:editable="false"
android:inputType="none" />
我的要求是有一个EditText的外观和感觉,并就其点击弹出一个窗口,但使能为假不允许点击它侦听器。所以我做了这个样子。
<EditText
android:id="@+id/tvCustomerAge"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:minWidth="80dp"
android:layout_alignParentEnd="true"
android:drawableRight="@drawable/arrow_down"
android:inputType="none"
android:focusable="false"
android:clickable="true"
tools:text="24"/>