EditText подсказка не показывает
Мой EditText
настроенный следующим образом не покажет подсказку:
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="right"
android:hint="The hint..."
android:scrollHorizontally="true"
android:singleLine="true" />
Это работает, если я установил android:gravity="left"
или если я удалю android:scrollHorizontally
а также android:singleLine
атрибуты, что не желательно. Какие-либо предложения?
12 ответов
С помощью android:ellipsize="end"
исправил это для меня странная ошибка! (но в Android есть много этих странных ошибок)
В версии Lollipop текст по умолчанию и цвет текста подсказки белый для EditText
, Таким образом, мы должны изменить это в EditText
android:textColorHint="@color/grey"
Я хотел свою однострочную EditText
поле для прокрутки, но также держите подсказку справа. У меня была та же проблема, и я получил подсказку придерживаться, сохраняя gravity="right"
и настройка singleLine="true"
а также ellipsize="end"
,
Вы должны дать тексту подсказку
android:textColorHint="#000000"
Попробуйте изменить цвет текста подсказки, иногда цвет подсказки совпадает с цветом фона
android:textColorHint="@color/colorBlack"
Нет необходимости android:scrollHorizontally
приписывать. Убери это.EditText
является фиксированным элементом на экране. мы хотим прокрутить макет, содержащий EditText достаточно. это тоже лучший дизайн. ты положил android:ellipsize="end"
вместо android:scrollHorizontally
,
Использование android:ellipsize="end" устраняет очевидную ошибку платформы. К сожалению, Xperias по-прежнему плохо себя ведет:(
Я не нашел другого решения, кроме как:
if (android.os.Build.MANUFACTURER.matches(".*[Ss]ony.*"))
editText.setGravity(Gravity.LEFT);
else
editText.setGravity(Gravity.CENTER);
Ниже работает для меня:
<EditText
android:id="@+id/UserText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_alignRight="@+id/UserPassword"
android:layout_marginTop="85dp"
android:ems="10"
android:hint="@string/UserHint"
android:inputType="textPersonName"
android:singleLine="true"
android:text="@string/UserName" >
<requestFocus />
</EditText>
Вот как я сделал для EditText
иметь подсказку
<EditText
android:id="@+id/productQuantity"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="right|center_vertical"
android:hint="@string/quantity"
android:inputType="numberSigned"
android:ellipsize="end"
android:singleLine="true" >
</EditText>
Я изменил стиль на
"@style/Base.WidgetMaterialComponents.TextImputEditText"
. Для меня это не было ни гравитацией, ни цветом.