2013-08-20 5 views
12

В моем приложении, у меня есть редактировать текст со свойствами:EditText курсор становится невидимым в JellyBean

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

Это потому, что я определил свои собственные кнопки для ввода ввода (кнопки, а не пользовательская клавиатура). Я использовал

editText.requestFocus()

сделать курсор видимым. Upto для android 4.0.4, курсор виден, а не на телефонах с Jelly Bean. Курсор не отображается, но я могу касаться и вводить текст между символами (используя editText.getSelectionStart()).

Что изменилось в Jelly Bean? Как сделать курсор видимым?

Редактировать: android:cursorVisible="true" не помогает.

ответ

38

Удаления android:textIsSelectable="true (текста выбирается даже без этого)

и с добавлением

android:textCursorDrawable="@null" исправлена ​​проблема.

+2

Курсор может быть невидимым, потому что он сочетается с цветом фона. «Null» выше заставляет его использовать «android: textColor» –

0

Попробуйте добавить следующее:

android:clickable="false" 
+0

Мне нужно уметь установить курсор. Разве это не помешает? –

0

Установка android:textCursorDrawable="@android:drawable/my_cursor_drawabl", как показано ниже. EditText стиль

ТЕМЫ:

<item name="android:editTextStyle">@style/myEditText</item> 

После вытяжки установить курсор: для Android: textCursorDrawable свойства редактирования-текст

<style name="myEditText" parent="@android:style/Widget.Holo.Light.EditText"> 
    <item name="android:background">@android:drawable/editbox_background_normal</item> 
    <item name="android:textCursorDrawable">@android:drawable/my_cursor_drawable</item> 
    <item name="android:height">45sp</item> 
</style> 

check this

+0

Я добавил