TextInpuLayout描边显示不正确

时间:2019-07-19 09:18:07

标签: android android-layout

我正在使用InputEditTextLayout大纲密度。 当提示启用=关闭时,笔画以这种方式剪切,但在启用提示时正确显示。 https://ibb.co/yPrjHJ2 https://ibb.co/WD8Lktc 我尝试放置填充和边距,但没有任何效果。我找不到如何在InputEditTextLayout中设置背景填充的方法。

<androidx.constraintlayout.widget.ConstraintLayout
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  >
  <ImageView
    android:id="@+id/imageView2"
    android:layout_width="match_parent"
    android:layout_height="120dp"
    android:layout_marginTop="124dp"
    android:minHeight="10dp"
    android:paddingBottom="16dp"
    android:src="@drawable/signin_header"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent" />

  <com.google.android.material.textfield.TextInputLayout
    android:id="@+id/textInputLayout2"
    style="@style/LoginTextInputLayoutStyle"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    app:hintEnabled="false"
    android:layout_marginTop="16dp"
    app:layout_constraintEnd_toStartOf="@+id/guideline2"
    app:layout_constraintHorizontal_bias="0.0"
    android:paddingBottom="4dp"
    android:paddingTop="2dp"
    app:layout_constraintStart_toStartOf="@+id/guideline3"
    app:layout_constraintTop_toBottomOf="@+id/imageView2">

    <com.google.android.material.textfield.TextInputEditText
      android:id="@+id/login_email"
      android:layout_width="match_parent"
      android:layout_height="wrap_content"
      android:hint="Email"
      android:paddingStart="16dp"
      android:layout_gravity="center"
      android:inputType="textEmailAddress"
      android:textColor="@color/LightBlack"
      android:textColorHint="@color/LightBlack"
      android:textSize="16dp" />
  </com.google.android.material.textfield.TextInputLayout>


  <com.google.android.material.textfield.TextInputLayout
    android:id="@+id/textInputLayout"
    style="@style/LoginTextInputLayoutStyle"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_marginVertical="@dimen/tex_size_default"
    android:layout_marginTop="32dp"
    app:hintEnabled="false"
    android:paddingBottom="2dp"
    android:paddingTop="2dp"
    app:layout_constraintEnd_toStartOf="@+id/guideline2"
    app:layout_constraintStart_toStartOf="@+id/guideline3"
    app:layout_constraintTop_toBottomOf="@+id/textInputLayout2"
    app:passwordToggleEnabled="true">

    <com.google.android.material.textfield.TextInputEditText
      android:id="@+id/login_password"
      android:layout_width="match_parent"
      android:layout_height="wrap_content"
      android:hint="Enter Password"
      android:inputType="textPassword"
      android:paddingStart="16dp"
      android:textColorHint="@color/LightBlack"
      android:textColor="@color/LightBlack"
      android:textSize="16sp" />
  </com.google.android.material.textfield.TextInputLayout>

  <TextView
    android:id="@+id/not_regis"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginTop="4dp"
    android:paddingEnd="5dp"
    android:text="Not registered?"
    android:textAlignment="center"
    android:textColor="@android:color/white"
    android:textSize="@dimen/tex_size_default"
    app:layout_constraintStart_toStartOf="@+id/textView13"
    app:layout_constraintTop_toBottomOf="@+id/textView13" />


  <TextView
    android:id="@+id/login_signup"
    style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox"
    android:layout_width="wrap_content"
    android:layout_height="26dp"
    android:layout_toEndOf="@+id/not_regis"
    android:onClick="signup_screen"
    android:text="Sign Up"
    android:textAlignment="center"
    android:textColor="#F57C00"
    android:textSize="@dimen/tex_size_default"
    android:textStyle="bold"
    app:layout_constraintBaseline_toBaselineOf="@+id/not_regis"
    app:layout_constraintStart_toEndOf="@+id/not_regis" />

  <com.google.android.material.button.MaterialButton
    android:id="@+id/login_login"
    style="@style/RoundButton"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_marginStart="92dp"
    android:layout_marginTop="32dp"
    android:onClick="login"
    android:padding="10dp"
    android:text="LOGIN"
    android:textColor="@android:color/black"
    app:layout_constraintStart_toStartOf="@+id/guideline3"
    app:layout_constraintTop_toBottomOf="@+id/textInputLayout" />

  <TextView
    android:id="@+id/textView13"
    android:layout_width="137dp"
    android:layout_height="23dp"
    android:layout_alignParentEnd="true"
    android:layout_alignParentBottom="true"
    android:layout_marginStart="8dp"
    android:layout_marginTop="40dp"
    android:onClick="forgetpassword"
    android:text="Forgot password"
    android:textColor="#F57C00"
    android:textSize="@dimen/tex_size_default"
    app:layout_constraintStart_toStartOf="@+id/guideline3"
    app:layout_constraintTop_toBottomOf="@+id/login_login" />

  <androidx.constraintlayout.widget.Guideline
    android:id="@+id/guideline2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    app:layout_constraintGuide_percent="0.84" />

  <androidx.constraintlayout.widget.Guideline
    android:id="@+id/guideline3"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    app:layout_constraintGuide_percent="0.16" />


</androidx.constraintlayout.widget.ConstraintLayout>

2 个答案:

答案 0 :(得分:0)

您可以尝试在下面的示例一中正确显示TextInpuLayout描边。您也可以参考them以获得更完整的解决方案。

<TextView
    android:id="@+id/not_regis"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginTop="4dp"
    android:paddingEnd="5dp"
    android:text="Not registered?"
    android:textAlignment="center"
    android:textColor="@android:color/white"
    android:textSize="@dimen/tex_size_default"
    app:layout_constraintStart_toStartOf="@+id/textView13"
    app:layout_constraintTop_toBottomOf="@+id/textView13" />

答案 1 :(得分:0)

尝试一下我用过的这个例子。

<com.google.android.material.textfield.TextInputLayout
        android:id="@+id/user_name"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_marginStart="42dp"
        android:layout_marginTop="87dp"
        android:layout_marginEnd="42dp"
        android:theme="@style/TextLabel"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@id/tv_bold_line">

        <androidx.appcompat.widget.AppCompatAutoCompleteTextView
            android:id="@+id/ed_user_name"
            style="@style/TextViewSingleLine"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            app:drawableEndCompat="@drawable/ic_user"
            android:hint="@string/user_name"
            android:imeOptions="actionNext"
            android:paddingBottom="16dp"
            android:textSize="@dimen/login_text" />
    </com.google.android.material.textfield.TextInputLayout>