如何向类中的EditText中添加不在XML中的占位符文本?

我有以下EditText在我的代码,这将显示在alertdialog:

    final EditText name = new EditText(this);

当前回答

啊,好吧。你要找的是setHint(int)。只需从xml中传入一个字符串的资源id,就可以开始了。

EDIT

XML中,它是android:hint="someText"

其他回答

如果你想在你的EditText视图中插入文本,在字段被选中后(不像提示的行为),这样做:

在Java中:

// Cast Your EditText as a TextView
((TextView) findViewById(R.id.email)).setText("your Text")

在芬兰湾的科特林:

// Cast your EditText into a TextView
// Like this
(findViewById(R.id.email) as TextView).text = "Your Text"
// Or simply like this
findViewById<TextView>(R.id.email).text = "Your Text"

在Android Studio中,您可以通过GUI添加提示(占位符)。首先在设计器视图上选择EditText字段。然后点击IDE左边的组件树(通常它在那里,但它可能在那里最小化),在那里你可以看到所选EditText的属性。找到提示字段如下图像

在那里,您可以添加提示(占位符)到EditText

这是如何使输入密码有提示,不转换为* !!

关于XML:

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

感谢芒果和rjjr的洞察力:D。

你必须使用android:hint属性

<EditText
android:id="@+id/message"
android:hint="<<Your placeholder>>"
/>

在Android Studio中,您可以从XML ->设计视图切换,并单击布局中的组件,在本例中是EditText字段。 这将显示该GUI组件的所有适用属性。 当您不知道所有属性时,这将很方便。

您会惊讶地发现EditText有超过140个自定义属性。

在活动中

<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"/>