我在Activity中有一个ListView,在每个项目中,我插入一个EditText来显示我的文本。 我需要拖动手柄来选择文字&复制文本,但无法编辑文本。 在Android ICS上,我该怎么做?
答案 0 :(得分:17)
text.setTextIsSelectable(true)
需要API 11.对于使用较低API的用户:
在xml中使用:
android:inputType="none"
android:textIsSelectable="true"
这将使您的EditText无法编辑但可选择。
答案 1 :(得分:5)
我认为你可以覆盖onKeyDown()方法,让它什么都不做但返回true。它应该从键盘上捕获按键并在它们进入EditText中的文本之前取消它们。
你也可能try setting editable这样做假
android:editable="false"
在xml布局中的EditText上。但是我不确定这是否会让你仍然突出并复制,但值得一试。
答案 2 :(得分:3)
我解决了这个问题 只需像这样设置TextView:
text.setTextIsSelectable(true);
答案 3 :(得分:2)
Althouth android:editable
已弃用,Lint建议使用inputType
,它似乎无法正常工作。所以android:editable="false"
显然是所有Android版本的最佳解决方案。
<EditText
android:id="@+id/editText"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:editable="false"
android:textIsSelectable="true"
tools:ignore="Deprecated" />