Как добавить текст placeholder в EditText
в классе, который не находится в XML?
У меня есть следующий EditText
в моем коде, который будет показан в alertdialog:
final EditText name = new EditText(this);
Как добавить текст placeholder в EditText
в классе, который не находится в XML?
У меня есть следующий EditText
в моем коде, который будет показан в alertdialog:
final EditText name = new EditText(this);
А, хорошо. Вы ищете setHint(int)
. Просто передайте идентификатор ресурса строки из вашего xml, и вам хорошо идти.
И в 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"/>
Это как сделать пароль ввода с подсказкой, которая не была преобразована в *!!.
В XML:
android:inputType="textPassword"
android:gravity="center"
android:ellipsize="start"
android:hint="Input Password !."
благодаря: mango и rjrjr для понимания: D.
В Android Studio вы можете добавить подсказку (Place holder) через графический интерфейс. Сначала выберите поле EditText в представлении конструктора. Затем нажмите Дерево компонентов слева от IDE (как правило, оно там, но оно может быть свернуто). Там вы можете увидеть Свойства выбранного EditText. Найдите поле подсказка, как показано ниже
Там вы можете добавить подсказку (Placeholder) в 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);
Если вы хотите вставить текст в представление EditText, которое остается там после выбора поля (в отличие от поведения подсказки), сделайте следующее:
На Java
// Cast Your EditText as a TextView
((TextView) findViewById(R.id.email)).setText("your Text")
Вы должны использовать атрибут андроида: подсказка
<EditText
android:id="@+id/message"
android:hint="<<Your placeholder>>"
/>
В Android Studio вы можете переключиться с XML → Представление "Дизайн" и щелкнуть "Компонент" в макете, в данном случае поле "EditText". Это покажет все применимые атрибуты для этого компонента GUI. Это будет удобно, когда вы не знаете обо всех атрибутах, которые там есть.
Вы будете удивлены, увидев, что EditText имеет более 140 атрибутов для настройки.