如何在 android 中创建轮廓化的 EditText?

How to create outlined EditText in android?

我想在 Android 中自定义文本字段。

当登录 activity 出现时,它将显示正常的文本字段,如下所示:

当用户点击文本框输入时,文本框应显示为:

我怎样才能实现这种行为?

你应该试试 Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense

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

                    <androidx.appcompat.widget.AppCompatEditText
                         android:layout_width="match_parent"
                         android:layout_height="wrap_content"
                         android:hint="Enter your valid phone" />

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

那么您的 customInputLayoutStyle 将是

<style name="customInputLayoutStyle" parent="Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense">
        <item name="boxStrokeColor">@color/colorPrimary</item>
 </style>