在支持库中,引入了FloatingActionButton。有一个选项可以使用app:borderWidth="2dp"设置按钮的边框宽度,但是如何设置边框颜色呢?

我为该porpuse创建了一个自定义可绘制对象,例如:

<item>
     <shape android:shape="oval">
         <solid android:color="@color/color1" />
         <stroke android:width="2dp" android:color="@android:color/white" />
     </shape>
</item>

并尝试使用FloatingActionButton的android:backgroundapp:backgroundTint属性来设置背景。他们都没有工作。请注意,app:backgroundTint似乎只是接受颜色而不是可绘制的

有人知道有什么解决方法吗?

最佳答案

您是否尝试过android:src属性?
试试这个

<android.support.design.widget.FloatingActionButton
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:src="@drawable/your_drawable"
    andriod:scaleType="center"  /> <!-- You need to scale your src. ->

我希望它能起作用。

编辑
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/your_icon" /> <!-- include your icon here -->
    <item>
        <shape android:shape="oval"> <!-- or rectangle -->

            <stroke
                android:width="2dp"
                android:color="@android:color/white" />
        </shape>
    </item>
</layer-list>

您可以将图标添加为drawable形状xml。并在图标上添加边框,并将其应用于FAB

我在形状文件中添加了hdpi图标,这就是我得到的结果。

根据Google设计规范,实际的可绘制尺寸应为 24dp

android - 在支持库中设置FloatingActionButton的边框颜色-LMLPHP

关于android - 在支持库中设置FloatingActionButton的边框颜色,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32049840/

10-09 07:32
查看更多