22

是否有可能让我的提示文本始终位于顶部,就好像它是可聚焦的一样?

我试过这个:

 <android.support.design.widget.TextInputLayout
            android:id="@+id/etSurnameInput"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/llNameImage"
            android:hint="My Hint Text"
            app:hintEnabled="true"
            app:hintAnimationEnabled="false"
            android:textColorHint="@color/gray_title">
4

5 回答 5

14

实际上,从com.google.android.material:material:1.3.0-alpha03或更高,您可以简单地设置app:expandedHintEnabled="false"使其始终浮动。

于 2021-03-03T02:46:11.880 回答
5

这是一个 hack - 如果文本为空,则以编程方式在文本中添加一个空格。但是,如果空格已聚焦,则必须删除空格,否则用户将开始输入前导空格。另一种选择是始终trim使用用户键入的文本。

于 2017-10-20T20:20:29.623 回答
3

我当时的最终解决方案实际上只是设置 hintEnabled="false" 并在顶部使用 TextView。

于 2018-05-22T07:41:16.097 回答
1

您可以设置android:minLines="2"TextInputEditText或大于 2。同时保持android:gravity="top"

<com.google.android.material.textfield.TextInputLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <com.google.android.material.textfield.TextInputEditText
        android:layout_width="match_parent"
        android:layout_height="100dp"
        android:gravity="top"
        android:hint="Username"
        android:minLines="2" />
于 2021-01-12T23:17:20.357 回答
0

将 android:textAlignment="center" 设置为 TextInputEditText 并将 android:gravity="start" 设置为 TextInputLayout

<com.google.android.material.textfield.TextInputLayout
                android:id="@+id/tilName"
                app:expandedHintEnabled="false"
                android:hint="@string/name_hint"
                android:gravity="start"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content">
                <com.google.android.material.textfield.TextInputEditText
                    android:layout_gravity="center"
                    android:hint="@string/name_hint"
                    android:textAlignment="center"
                    android:id="@+id/fieldName"
                    android:inputType="text"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    />
于 2021-05-05T07:29:42.293 回答