【问题标题】:How to change visiblity (visible, invisible or gone ) of setEndIconDrawable in TextInputLayout android?如何在 TextInputLayout android 中更改 setEndIconDrawable 的可见性(可见、不可见或消失)?
【发布时间】:2020-07-08 07:07:19
【问题描述】:

我试图使 endIconDrawable 不可见或不可见,它是上图中 FirstName 字段的编辑图标,并且想要保留其他字段的可见编辑图标但无法做到?我该怎么做?

      <com.google.android.material.textfield.TextInputLayout
                android:id="@+id/tilFirstName"
                android:layout_width="match_parent"
                android:layout_height="@dimen/_64dp"
                app:endIconDrawable="@drawable/icon_edit"
                app:endIconMode="custom">

                <com.google.android.material.textfield.TextInputEditText
                    android:id="@+id/etFirstName"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:focusableInTouchMode="false"
                    android:hint="@string/label_fname"
                    android:inputType="textCapWords" />
            </com.google.android.material.textfield.TextInputLayout>

我想得到如下图所示:

【问题讨论】:

    标签: android android-drawable android-textinputlayout material-components-android


    【解决方案1】:

    如果您想在布局中执行此操作(静态方式),请不要添加 app:endIconDrawable/app:endIconMode 属性:

      <com.google.android.material.textfield.TextInputLayout
                android:id="@+id/tilFirstName"
                android:layout_width="match_parent"
                android:layout_height="@dimen/_64dp">
    

    以编程方式删除您可以使用的endIconDrawable

    textInputLayout.setEndIconMode(TextInputLayout.END_ICON_NONE);
    

    要添加endIconDrawable,您可以使用:

    textInputLayout.setEndIconMode(TextInputLayout.END_ICON_CUSTOM);
    textInputLayout.setEndIconDrawable(R.drawable.xxxx);
    

    【讨论】:

      【解决方案2】:

      我尝试了@Gabriele Mariotti 的回答。这很好,但它有一个问题。我使用代码使 endicon 在文本观察器中可见或不可见,但它没有按预期工作。然后我为 textInputLayout 使用了 isEndIconVisible 属性,并判断它是真还是假。它可以正常工作。

      【讨论】:

        【解决方案3】:

        添加这个android:visibility="gone"

        【讨论】:

          猜你喜欢
          • 2020-10-27
          • 2019-08-28
          • 2020-02-10
          • 2016-06-24
          • 2019-08-05
          • 2013-07-31
          • 2017-08-04
          • 2017-07-25
          • 1970-01-01
          相关资源
          最近更新 更多