pre lollipop 上浮动操作按钮的破碎阴影

Posted

技术标签:

【中文标题】pre lollipop 上浮动操作按钮的破碎阴影【英文标题】:Broken drop shadow of floating action button on pre lollipop 【发布时间】:2016-04-06 17:53:47 【问题描述】:

我正在尝试在我的应用中包含一个浮动操作按钮。这适用于具有 API 21 及更高版本的设备。但对于具有早期版本的设备,投影如下所示:

浮动操作按钮的 xml 如下所示:

    <android.support.design.widget.FloatingActionButton
    android:id="@+id/floatingActionButton"
    android:layout_
    android:layout_
    android:clickable="true"
    android:src="@drawable/ic_fab_add"
    android:layout_marginLeft="16dp"
    app:elevation="6dp"
    app:borderWidth="0dp"
    android:layout_above="@+id/destinationContainer" />

我使用支持设计库“com.android.support:design:23.1.1”来包含浮动操作按钮。

有人知道我做错了什么吗?

谢谢。

编辑:

我发现,40dp 的自定义大小是问题所在。破碎的阴影可能只出现在 40dp 和原始大小之间的空间中......这并不能解决我的问题,但它是一个提示

【问题讨论】:

看到这个答案:我认为它会帮助你***.com/a/37496417/3863369 [问题在于自定义 fab 按钮大小,您可以通过 ](***.com/a/42943514/5845024) 进行此操作 【参考方案1】:

尝试将此代码添加到您的 xml 中

app:elevation="@dimen/floating_button_elevation"
app:borderWidth="0dp"
app:rippleColor="@color/your_ripple_color"
app:backgroundTint="@color/your_bg_color"

【讨论】:

不幸的是,这不起作用...投影看起来还是一样。 试试这个可能有帮助***.com/questions/30576450/… 我发现 40dp 的自定义尺寸是问题所在。破碎的阴影是按钮的原始大小和我的自定义大小 40dp 之间的空间。我希望能找到解决办法。否则我必须模拟按钮。 @Sneek 你有没有为你的定制尺寸的工厂找到任何解决方案?我面临着类似的问题

以上是关于pre lollipop 上浮动操作按钮的破碎阴影的主要内容,如果未能解决你的问题,请参考以下文章

Lollipop RippleDrawable 与 Pre-Lollipop 的选择器

用于 Pre-Lollipop 设备的具有弯曲背景的 Android Ripple 按钮

如何为 Pre-lollipop 实现 Material-design Elevation

如何从浮动操作按钮中删除那些深色圆形背景?

Lollipop导航栏重叠Dialog与Gravity.Bottom

Media Session Compat 未在 Pre-Lollipop 上显示锁屏控件