Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

TextInputLayout error message 로 인한 간격 벌어짐 문제 #42

Open
easyhooon opened this issue Jun 27, 2023 · 0 comments
Open

TextInputLayout error message 로 인한 간격 벌어짐 문제 #42

easyhooon opened this issue Jun 27, 2023 · 0 comments
Assignees
Labels
bug tasks related to fix bugs design tasks related to design

Comments

@easyhooon
Copy link
Collaborator

easyhooon commented Jun 27, 2023

TextInputLayout 의 error 를 null 또는 "" 로 설정할 경우 에러가 발생되지 않았다고 판단되어 strokeColor 가 strokeErrorColor 에서 defaultStrokeColor 로 변경됨

image

따라서 해당 화면 처럼 TextInputLayout 에 error 텍스트가 없이 error 상황을 발생시키려면 error 를 " "등으로 설정할 필요가 있음

하지만 error 를 한번 이상 발생된 경우 errorText 가 차지 하는 만큼의 공간이 뷰에 이미 할당되어 error 가 사라진 후에도 이는 원래 상태로 돌아가지 않음(다시 원래 간격으로 좁혀지지 않음)
TextInputLayoutError

error 문구를 넣을 경우 text 의 크기만큼 공간이 할당 되기 때문에

  <style name="ErrorAppearance" parent="@style/TextAppearance.Design.Error">
    <item name="android:textSize">0sp</item>
  </style>

해당 style 속성을 TextInputLayout 에 errorTextAppearance 속성으로 지정해보았으나

    <com.google.android.material.textfield.TextInputLayout
      android:id="@+id/til_register_cafe_name"
      style="@style/Widget.Eggeum.TextInputLayout.OutlinedBox"
      android:layout_marginTop="4dp"
      app:boxStrokeColor="@drawable/selector_box_stroke_color"
      app:errorTextAppearance="@style/ErrorAppearance"
      app:layout_constraintEnd_toEndOf="parent"
      app:layout_constraintStart_toStartOf="parent"
      app:layout_constraintTop_toBottomOf="@id/tv_register_cafe_name">

      <com.google.android.material.textfield.TextInputEditText
        android:id="@+id/tiet_register_cafe_name"
        style="@style/Widget.Eggeum.TextInputEditText.OutlinedBox"
        android:ellipsize="end"
        android:hint="@string/input_cafe_name"
        android:inputType="text"
        android:maxLines="1" />

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

움짤에서 처럼 약간의 간격이 벌어지는 것을 막진 못함

대안)
CardView + EditText
그러나 endIconClickListener 등을 직접 커스텀해서 구현해줘야 하는 공수가 필요

@jisungbin jisungbin added bug tasks related to fix bugs design tasks related to design labels Jun 27, 2023 — with Slack
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug tasks related to fix bugs design tasks related to design
Projects
None yet
Development

No branches or pull requests

2 participants