Android Material 文本输入布局结束图标不显示

问题描述 投票:0回答:6

我正在尝试将结束图标添加到我的文本输入布局中。我已经遇到了这样做的方法,但是当我尝试实现它时,它不起作用。

Material io 说显示尾随图标所需的只是添加

app:endIconDrawable="@drawable/your_icon_here"
当我这样做时,我没有显示图标。我使用的图标是从 Google 的材质图标库中以 SVG 形式下载的,并将其作为矢量资源导入到项目中。

下面是我的代码和我得到的结果的图片。 (我已经打破了线路,以便更容易找到图标的调用)

<com.google.android.material.textfield.TextInputLayout
  android:id="@+id/input_layout_event_name"
  android:layout_width="match_parent"
  android:layout_height="wrap_content"
  android:layout_marginTop="8dp"
  android:hint="@string/ec_event_name"

  app:endIconDrawable="@drawable/ic_event_black_24dp"

  app:errorEnabled="false"
  app:boxBackgroundColor="@android:color/transparent"
  android:background="@android:color/transparent">

     <com.google.android.material.textfield.TextInputEditText
       android:id="@+id/input_event_name"
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       android:inputType="textAutoCorrect" />

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

如有任何帮助,我们将不胜感激!

android android-layout android-textinputlayout
6个回答
62
投票

结束图标不可见,因为它默认处于禁用状态 (END_ICON_NONE)。将此属性添加到

TextInputLayout
:

app:endIconMode="custom"

8
投票

你需要这样使用:

<com.google.android.material.textfield.TextInputLayout 
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:endIconDrawable="@drawable/ic_calendar"
    app:endIconMode="custom">

3
投票

在您的

android:drawableEnd
中使用
TextInputEditText
:

android:drawableEnd="@drawable/your_icon_here"

1
投票

您错过了属性

app:passwordToggleEnabled="true"
app:endIconMode="password_toggle"
处的
TextInputLayout


0
投票

用这个

app:endIconMode="custom"
app:endIconDrawable="@drawable/ic_baseline_edit_calendar_24"

0
投票

我知道这个问题已经很老了,但对于 2023 年之后的开发人员来说,InputTextLayout 不会在预览中显示图标,但如果您运行该应用程序,图标就会在那里。 只需做这样的事情:

<com.google.android.material.textfield.TextInputLayout
    android:id="@+id/til_vamep_input_text"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    app:endIconDrawable="@drawable/ic_your_icon" //Your icon here
    app:endIconMode="custom" //Don't forget it
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toBottomOf="parent">

    <TextInputEditText.../>

 <com.google.android.material.textfield.TextInputLayout/>
© www.soinside.com 2019 - 2024. All rights reserved.