无法在芯片中添加图标

7

我已经成功在我的应用程序中实现了 ChipGroup 内的 3 个 Chip,但是我无法让左侧的图标出现。

<android.support.design.chip.ChipGroup
    android:id="@+id/chip_group"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center_horizontal"
    android:layout_marginTop="32dp"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toBottomOf="@+id/img_announcement_photo"
    app:singleLine="true"
    app:singleSelection="true">

    <android.support.design.chip.Chip
        android:id="@+id/chip_donate"
        style="@style/ChipStyle"
        android:checked="true"
        app:chipIcon="@drawable/ic_donate_black_24dp" />

    <android.support.design.chip.Chip
        android:id="@+id/chip_sell"
        style="@style/ChipStyle"
        app:chipIcon="@drawable/ic_sell_black_24dp" />

    <android.support.design.chip.Chip
        android:id="@+id/chip_trade"
        style="@style/ChipStyle"
        app:chipIcon="@drawable/ic_trade_black_24dp" />
</android.support.design.chip.ChipGroup>

但是它没有显示出来。我已经尝试编程实现,但没有成功。我目前还没有使用新的命名空间,而是使用旧的com.android.support:design:28.0.0-alpha3,因为我还在使用Google地图,而androidx.*尚未支持。


@style/ChipStyle 是什么? - Gabriele Mariotti
3个回答

15

尝试将 app:chipIconVisible="true" 添加到您的芯片样式中。


10

实际上,由于app:chipIconEnabled已被标记为过时的,现在必须改为使用app:chipIconVisible="true"


4
如果您的样式 @style/ChipStyle 包含 style="@style/Widget.MaterialComponents.Chip.Choice"style="@style/Widget.MaterialComponents.Chip.Filter",则图标将不会显示。我不知道 Google 这样做的原因是什么,但我认为这很愚蠢。

我完全同意。但是你仍然可以使用 app:chipIconVisible="true" 使图标可见! - StefanTo

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接