Как сделать EditText выбираемым, но не редактируемым на Android Ice Cream Sandwich?

У меня есть ListView в Activity, и в каждый элемент я вставляю EditText для отображения моего текста. Мне нужно перетащить ручку, чтобы выбрать текст & amp; Скопируйте текст, но не можете редактировать текст. На Android ICS, как я могу это сделать?

Ответы на вопрос(4)

text.setTextIsSelectable(true) В xml используйте:

android:inputType="none"
android:textIsSelectable="true"

Это сделает ваш EditText не редактируемым, но выбираемым.

 25 нояб. 2013 г., 15:36
Проверьте мой полный ответ, размещенный наstackoverflow.com/a/20173020/1241783, Не очень гордый хакерский путь, но это единственный способ, который я знаю на данный момент. Дайте мне знать, если кто-то знает лучший способ для версии API & lt; 10. Спасибо!
 24 нояб. 2013 г., 02:25
Я могу подтвердить, что в API 10 (проверено на 2.3.4 и 2.3.6) две вышеупомянутые строки не работают. EditText все еще редактируемый, и клавиатура выскакивает ..
 25 нояб. 2013 г., 03:14
Тогда каково решение?
 20 окт. 2014 г., 18:35
спасибо - у меня сработало (с API 15)

android:editable являетсяdeprecated и Линт предлагает использовать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" />
Решение Вопроса


Просто установите TextView так:

text.setTextIsSelectable(true);
 08 июн. 2013 г., 11:44
вызов требует API 11

что вы можете переопределить метод onKeyDown (), заставить его ничего не делать, но вернуть true. Он должен перехватывать нажатия клавиш на клавиатуре и отменять их, прежде чем они смогут войти в текст в EditText.

Вы могли бы такжепопробуйте установить редактируемые ложно, как это

android:editable="false"

на EditText в вашем макете XML. Однако я не уверен, позволит ли это вам по-прежнему выделять и копировать, но это стоит того.

 Limp11 мая 2012 г., 04:48
Да, они сказали мне использовать TextView вместо этого. Но TextView не может быть выбран.
 11 мая 2012 г., 04:03
они оставили записку, которая говорит вам, что использовать вместо этого?
 Limp11 мая 2012 г., 03:56
Спасибо, Тим! Но android: редактируемый устарел на Android Ice Cream Sandwich.

Ваш ответ на вопрос