Android добавить текст заполнителя в EditText

как я могу добавить местозаполнитель текст EditText в классе, которого нет в XML?

у меня есть следующие EditText в моем коде, который будет показан в alertdialog:

    final EditText name = new EditText(this);

6 ответов


Ах, ОК. То, что вы ищете-это setHint(int). Просто передать идентификатор ресурса строки из XML и вы хорошо идти.

enter image description here

редактировать

и в XML, это просто android:hint="someText"


android:hint="text" предоставляет информацию для пользователя, что ему нужно заполнить в частности editText

например: - у меня есть два edittext один для числового значения и другой для строкового значения . мы можем установить подсказку для пользователя, чтобы он мог понять, какое значение ему нужно дать

android:hint="Please enter phone number"
android:hint="Enter name" 

после запуска приложения эти два edittext покажет введенную подсказку, после нажатия на редактировать текст он идет, и пользователь может ввести то, что он хочет (см. изображение luxurymode)


в работе

<EditText
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_marginBottom="10dp"
                android:background="@null"
                android:hint="Text Example"
                android:padding="5dp"
                android:singleLine="true"
                android:id="@+id/name"
                android:textColor="@color/magenta"/>

enter image description here


Это как сделать пароль ввода, который имеет подсказку, которая не преобразована в * !!.

в XML :

android:inputType="textPassword"
android:gravity="center"
android:ellipsize="start"
android:hint="Input Password !."

спасибо: манго и rjrjr за понимание: D.


В Android Studio вы можете добавить подсказку (держатель места) через GUI. Сначала выберите поле EditText в представлении конструктора. Затем нажмите на Компонент Дерева левая сторона IDE (обычно она там, но она может быть там сведена к минимуму) там вы можете увидеть свойства выбранного EditText. Найти подсказка поле как показано ниже

enter image description here

там Вы можете добавить подсказку (держатель места) в EditText


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

<LinearLayout xmlns=".."/>
    <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/container" android:layout_width="wrap_content"
        android:layout_height="wrap_content" />
</LinearLayout>

FrameLayout layout = (FrameLayout) findViewById(R.id.container);
layout.addView(name);