如何从android.support.design设置FloatingActionButton的样式

pik*_*ezi 1 android material-design android-support-design

我正在尝试为android.support.design的FloatingActionButton添加一个更明显的焦点效果.

到目前为止,我已经测试过为按钮添加自定义背景:

 <android.support.design.widget.FloatingActionButton
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/ic_done_24dp"
            android:background="@drawable/focus_gold"
            app:backgroundTint="#F7A200"
            app:pressedTranslationZ="12dp" />
Run Code Online (Sandbox Code Playgroud)

可绘制的focus_gold为:

 <?xml version="1.0" encoding="utf-8"?>
 <selector xmlns:android="http://schemas.android.com/apk/res/android">
   <item android:state_focused="true" android:drawable="#ff9800"/>
 </selector>
Run Code Online (Sandbox Code Playgroud)

结果如下(红色背景正常):

聚焦: 聚焦

重点: 重点

有没有人有想法用这个库在fab按钮上设置一个漂亮而简单的焦点效果?

谢谢,

文森特

phx*_*wke 14

我的建议,

  1. 摆脱android:background属性.
  2. 将fab_gold.xml从res/drawable /移到res/color /.
  3. 将backgroundTint更改为 app:backgroundTint="@color/focus_gold"

确保将focus_gold.xml更改为此

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
  <item android:color="#ff9800" android:state_focused="true"/>
  <item android:color="#F7A200" />
</selector>
Run Code Online (Sandbox Code Playgroud)