![](/img/trans.png)
[英]change FloatingActionButton and SubActionButton background color
[英]Change background on FloatingActionButton?
我试图将FAB的背景设置为XML中的不同颜色。 我知道我可以在代码中做到这一点,但这也需要我很多不方便的重构。
<android.support.design.widget.FloatingActionButton
android:layout_width="40dp"
android:layout_height="40dp"
android:background="#F38E1B"
android:id="@+id/fab"/>
出于某种原因,当背景应为橙色时,背景会保持蓝色。 我已经尝试将背景设置为drawable,但产生相同的结果。
这是一个错误还是我错过了一些东西?
我也尝试使用与您相同的方法,并获得相同的结果。 我的解决方案就是:
<item name="colorAccent">@color/yourColor</item>
在我的应用主题中。
但是,此颜色也将用于所有小部件中。
希望这可以帮助!
我有同样的问题。 这就是我解决问题的方法:我只是为我的按钮创建一个新主题。
我的FAB xml:
<android.support.design.widget.FloatingActionButton
...
android:theme="@style/MapButton"/>
我在style.xml中的新主题:
<style name="MapButton" parent="AppTheme">
<item name="colorAccent">#FFFFFF</item></style>
我根据App的主题创建了一个新主题,只改变了我想要的颜色。
希望能帮助到你。
好吧我明白了。 事实证明你必须将背景设置为drawable(感谢@Nilesh),但是我将它设置为drawable时出现了问题。 我用过这个:
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape android:shape="oval">
<solid android:color="@color/al_color_accent_orange_light"/>
</shape>
</item>
</layer-list>
作为我的绘画,它的工作原理。
在xml中
<android.support.design.widget.FloatingActionButton
...
app:backgroundTint="@color/background_tint"
android:src="@drawable/ic_add" />
在代码中
mFlaotsetBackgroundTintList(ColorStateList.valueOf(Color.Blue))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.