подсказка Android EditText не отображается
кажется, это самая странная вещь, с которой я когда-либо сталкивался.
вот макет:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<EditText
android:id="@+id/GuessAppEditText"
android:lines="1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:gravity="center_horizontal"
android:inputType="textCapWords"
android:hint="@string/Hint" />
</RelativeLayout>
на hint
of EditText
не отображается.
если я удалить android:gravity="center_horizontal"
или android:inputType="textCapWords"
, подсказка становится видимой.
Я понятия не имею, что имеет gravity
и textCapWords
к hint
. Это еще одна ошибка Android или я делаю что-то не так? В первом случае, что было бы обходным путем? Я хочу, чтобы мой текст был выровнен по центру и с заглавной буквы и подсказка должна быть показана. Или я слишком много хочу от бедного Андроида?
3 ответов
просто добавьте одну строку, и она будет работать, i.e android:ellipsize="start"
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<EditText
android:id="@+id/GuessAppEditText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:ellipsize="start"
android:gravity="center_horizontal"
android:hint="hint"
android:inputType="textCapWords"
android:lines="1" />
</RelativeLayout>
вероятно, что исходный ответ accept больше не действителен для последней версии android, настроив цвет подсказки, отобразит подсказку:
android:textColorHint="@android:color/darker_gray"
надеюсь, это поможет другим, протестировано с Android 5+
похоже, что это ошибка, как отмечено здесь. Похоже, что несколько человек в этом потоке опубликовали работу или решения, которые вы могли бы попробовать. Вы пытались удалить подсказку и установить ее программно, чтобы увидеть, является ли это обходным путем?
объявить это перед onCreate()
EditText guessAppEt;
и в onCreate()
guessAppEt = (EditText)findViewById(R.id.GuessAppEditText);
guessAppEt.setHint("Your hint here");