更改浮动操作菜单的颜色

时间:2015-01-07 17:06:40

标签: android

我正在使用此库进行浮动操作按钮

https://github.com/futuresimple/android-floating-action-button

如果有人了解它,我们知道我们可以用XML中的这一行更改浮动操作菜单的背景颜色:

fab:fab_addButtonColorNormal="@color/floating_action_menu"

有没有办法以编程方式这样做?

floating<enu.setBackgroundColor(color)

不起作用......

4 个答案:

答案 0 :(得分:1)

考虑到你现在可能已找到解决方案,但仍然添加答案看看......

floatingMenu.setBackgroundColor(getResources().getColor(R.color.yourColor));

这应该有效!

同样可以改变普通,按压颜色。

floatingMenu.setMenuButtonColorNormal(getResources().getColor(R.color.yournormalColor));
floatingMenu.setMenuButtonColorPressed(getResources().getColor(R.color.yourpressedColor));

这是此compile 'com.github.clans:fab:1.6.2'

的依赖项

和github link

答案 1 :(得分:0)

最近我遇到了同样的问题,包括我想添加一个图标。所以我想出的可能不是一个正确的解决方案,但对我来说似乎是有效的。从这个问题How to set icon to getbase FloatingActionsMenu中查看此答案。我不能把整个答案都包括在内。我希望这会有所帮助。

我还发现了另一个图书馆似乎包含了我需要的所有内容,但我还没有找到时间来测试它,但看起来很有希望(Clans/FloatingActionButton)。

答案 2 :(得分:0)

app:fab_colorNormal="@color/app_yellow_color"
app:fab_colorPressed="@color/app_dark_grey_color"

答案 3 :(得分:-1)

FloatingActionMenu只是一个ViewGroup,假设有孩子,大概是FloatingActionButton。名称为add的{​​{1}}作为前缀的属性与fab:fab_addButtonColorNormal的属性相同。

您可以在浮动菜单中引用最初添加的FloatinActionButton,如:

FloatingActionButton

并致电

FloatingActionButton initialFloating = (FloatingActionButton)mFloatingActionMenu.findViewById(R.id.fab_expand_menu_button) initialFloating.setColorNormal(normalColor)

如果要将相同的颜色应用于浮动菜单的所有组件,只需迭代子项,将它们转换为initialFloating.setColorPressed(pressedColor)并应用颜色。