的EditText不可编辑
我试图把一个EditText上的不可编辑,此代码:的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。
感谢与替代工作齿,但android:editable =“false”否 – Jjreina 2012-02-27 18:43:22
使用textview在这种情况下更好 – 2013-02-27 06:26:11
<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”'(和其他的一样)。 – BlueBoy 2017-09-05 02:01:11
不是因为它适合你,它也适用于我们。您是在今年5月19日发布的,所以您必须注意您提供了弃用的答案?来吧... – 2017-11-01 01:41:57
如果你想使一个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);
实际上你想要什么? – 2012-02-27 18:30:52
知道为什么不能只用android:editable =“false”。谢谢。 – Jjreina 2012-02-27 18:32:20
@ Zortkun:这正是OP所要求的。 – Squonk 2012-02-27 18:44:05