FAB 按钮未在 android studio 布局编辑器中正确显示可绘制对象

Posted

技术标签:

【中文标题】FAB 按钮未在 android studio 布局编辑器中正确显示可绘制对象【英文标题】:FAB button not showing drawable properly inside android studio layout editor 【发布时间】:2021-03-24 20:37:35 【问题描述】:

我似乎无法让 FAB 按钮预览正常工作。

<com.google.android.material.floatingactionbutton.FloatingActionButton
    android:layout_
    android:layout_
    android:layout_gravity="center_horizontal"
    android:contentDescription="@string/email_icon"
    app:srcCompat="@android:drawable/ic_dialog_email"/>

依赖 - implementation 'com.google.android.material:material:1.2.1'

预览

我尝试将显示的可绘制对象更改为普通矢量图像,并将app:srcCompat 更改为android:src,但没有运气:(

我读到这可能是 android studio 中的一个错误 - 我安装了 4.1.1 版本。

样式/主题文件内容

<resources xmlns:tools="http://schemas.android.com/tools">

<!-- Base application theme. -->
<style name="Theme.Kotlin" parent="Theme.MaterialComponents.DayNight.DarkActionBar">

    <!-- Primary brand color. -->
    <item name="colorPrimary">@color/cyan</item>
    <item name="colorPrimaryVariant">@color/cyan_dark</item>
    <item name="colorOnPrimary">@color/white</item>

    <!-- Secondary brand color. -->
    <item name="colorSecondary">@color/green</item>
    <item name="colorSecondaryVariant">@color/green_dark</item>
    <item name="colorOnSecondary">@color/black</item>

    <!-- Status bar color. -->
    <item name="android:statusBarColor" tools:targetApi="l">?attr/colorPrimaryVariant</item>

    <!-- Customize your theme here. -->

</style>

颜色文件内容

<resources>
    <color name="black">#FF000000</color>
    <color name="white">#FFFFFFFF</color>
    <color name="cyan">#006064</color>
    <color name="cyan_light">#428e92</color>
    <color name="cyan_dark">#00363a</color>
    <color name="green">#81c784</color>
    <color name="green_light">#b2fab4</color>
    <color name="green_dark">#519657</color>
</resources>

清单文件内容

<application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:roundIcon="@mipmap/ic_launcher_round"
    android:supportsRtl="true"
    android:theme="@style/Theme.Kotlin">

    <meta-data
        android:name="preloaded_fonts"
        android:resource="@array/preloaded_fonts" />

    <activity
        android:name=".MainActivity"
        android:label="@string/tip_time">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>

【问题讨论】:

重建可能会有所帮助。 请粘贴您的 style.xml 和颜色文件。 @MohammadOmidvar 我已经做到了。还尝试了清理、重建和使缓存失效并重新启动 @jeanlucrotolo 您的项目中有两个样式文件,即 style.xml 和 theme.xml 吗? @VishalChauhan 是的,但我的样式文件是空的 &lt;resources&gt;&lt;/resources&gt;。我现在只使用themes.xml。我试图只使用 style.xml,但我遇到了同样的问题 【参考方案1】:

将材质主题实现更改为'com.google.android.material:material:1.2.0-alpha02'。因为材料主题库的新版本是错误的。如果问题未解决,只需在 gradle 同步后重新启动 Android Studio。

【讨论】:

以上是关于FAB 按钮未在 android studio 布局编辑器中正确显示可绘制对象的主要内容,如果未能解决你的问题,请参考以下文章

Android L - 浮动操作按钮 (FAB)

android:从代码动态更改FAB(浮动操作按钮)图标

Android L FAB 按钮阴影

Android L FAB 按钮阴影

Eclipse 中所有 API 级别的 Android 5.0 FAB 按钮

如何在 android 上更改浮动操作按钮 (FAB) 的形状?