TextInputLayout后缀/前缀

时间:2017-04-06 17:43:37

标签: android android-textinputlayout

我想为TextInputLayout添加后缀。 一个例子来自material.io

Example

有没有标准解决方案?

2 个答案:

答案 0 :(得分:7)

使用材料组件库中提供的TextInputLayout,您可以使用attrs:

  • app:prefixText :前缀文本
  • app:suffixText :后缀文字

类似的东西:

<com.google.android.material.textfield.TextInputLayout
    android:hint="Test"
    app:prefixText="@string/..."
    app:prefixTextColor="@color/secondaryDarkColor"
    app:suffixText="@string/..."
    app:suffixTextColor="@color/primaryLightColor"
    ...>

    <com.google.android.material.textfield.TextInputEditText
        .../>

</com.google.android.material.textfield.TextInputLayout>

示例:

enter image description here

注意:这要求最低版本为 1.2.0-alpha01

答案 1 :(得分:3)

没有标准的解决方案,我使用textView右侧的textInputLayout和editText填充。

        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="4dp"
            android:gravity="bottom">

            <android.support.design.widget.TextInputLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:hint="Hint"
                app:errorEnabled="true">

                <android.support.v7.widget.AppCompatEditText
                    style="@style/RegistrationEditText"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:paddingRight="80dp" />
            </android.support.design.widget.TextInputLayout>

            <android.support.v7.widget.AppCompatTextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentRight="true"
                android:layout_centerInParent="true"
                android:paddingBottom="12dp"
                android:paddingRight="8dp"
                android:text="rightLabel" />
        </RelativeLayout>