首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么我的FloatingActionButton图标是黑色的?

问为什么我的FloatingActionButton图标是黑色的?
EN

Stack Overflow用户
提问于 2018-11-24 13:50:28
回答 6查看 29.3K关注 0票数 84

下面是我正在使用的代码。我在用雄激素。每个FAB都有一个黑色图标,即使它有白色。

mylayout.xml

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<androidx.coordinatorlayout.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_gravity="center"
    app:layout_behavior="@string/appbar_scrolling_view_behavior">

    <include layout="@layout/content_geral" />

    <com.google.android.material.floatingactionbutton.FloatingActionButton
        android:id="@+id/fab"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom|end"
        android:layout_margin="24dp"
        app:backgroundTint="@color/colorPrimary"
        app:srcCompat="@drawable/ic_cloud_upload"
        tools:ignore="VectorDrawableCompat" />

</androidx.coordinatorlayout.widget.CoordinatorLayout>

style.xml

代码语言:javascript
复制
 <!-- Base application theme. -->
    <style name="AppTheme" parent="Theme.MaterialComponents.Light.DarkActionBar">
        <!-- Customize your theme here. -->
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
        <item name="windowNoTitle">true</item>
        <item name="windowActionBar">false</item>
    </style>

​

​

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2018-12-07 11:10:59

如果使用的是AndroidX,则要更改图标的颜色,必须使用与android:tint相反的app:tint

代码语言:javascript
复制
<com.google.android.material.floatingactionbutton.FloatingActionButton
    style="@style/Widget.MaterialComponents.FloatingActionButton"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginEnd="16dp"
    android:layout_marginBottom="16dp"
    app:backgroundTint="@color/colorPrimary"
    app:tint="@color/white"
    app:srcCompat="@drawable/ic_add"
/>
票数 198
EN

Stack Overflow用户

发布于 2019-01-08 07:04:25

我有一个带有多种颜色(附加文件)的图标(向量),但是我不能使用app:tint="@color/white",因为我的图标的颜色变成了单一颜色,比如白色,我不需要这个。

因此,我修正了set设置app:tint为null的问题:

代码语言:javascript
复制
  app:tint="@null"

我的偶像(SVG)

​

​

票数 94
EN

Stack Overflow用户

发布于 2018-11-24 15:42:46

来自AndroidX的AndroidX类使用colorOnSecondary主题属性来修饰它的图标。

https://github.com/material-components/material-components-android/blob/master/lib/java/com/google/android/material/floatingactionbutton/res/values/styles.xml#L39

如果您遵循MaterialComponents主题定义到基本定义,您将看到colorOnSecondary的默认值是design_default_color_on_secondary.它被定义为#000000。

https://github.com/material-components/material-components-android/blob/master/lib/java/com/google/android/material/color/res/values/colors.xml#L26

您可以通过将app:tint属性直接添加到您的FloatingActionButton或通过在主题中重新定义@color/colorOnSecondary来解决这个问题。

票数 13
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53458821

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档