Android将占位符文本添加到EditText

时间:2011-11-22 02:01:50

标签: android placeholder

如何在不在XML中的类中向EditText添加placeholder文本?

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

    final EditText name = new EditText(this);

8 个答案:

答案 0 :(得分:760)

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

enter image description here

修改

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

答案 1 :(得分:18)

android:hint="text"为用户提供了他需要填写的信息editText

例如: - 我有两个edittext,一个用于数值,另一个用于字符串值。我们可以为用户设置一个提示,这样他就可以理解他需要提供什么价值

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

运行应用程序后,这两个edittext将显示输入的提示,点击编辑文本后,用户可以输入他想要的内容(参见luxurymode image)

答案 2 :(得分:10)

在您的活动中

<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

答案 3 :(得分:7)

如何输入具有未转换为* !!的提示的输入密码。

在XML上:

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

感谢:芒果和rjrjr的见解:D。

答案 4 :(得分:5)

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

enter image description here

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

答案 5 :(得分:3)

如果您指的是将其添加到布局中的位置。 您可以定义一个像FrameLayout这样的容器,并在创建它时将其添加到该容器中。

<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);

答案 6 :(得分:1)

您必须使用android:hint属性

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

在Android Studio中,您可以从XML->设计视图切换,然后单击布局中的Component(在这种情况下为EditText字段)。 这将显示该GUI组件的所有适用属性。 当您不知道其中的所有属性时,这将很方便。

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

答案 7 :(得分:0)

如果要在选定字段后将文本保留在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"