欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android开发悬浮按钮 Floating ActionButton的实现方法

程序员文章站 2024-03-06 19:58:44
一、介绍 这个类是继承自imageview的,所以对于这个控件我们可以使用imageview的所有属性 android.support.design.w...

一、介绍

这个类是继承自imageview的,所以对于这个控件我们可以使用imageview的所有属性

android.support.design.widget.floatingactionbutton 

二、使用准备, 在as 的 build.grade文件中写上

compile 'com.android.support:design:22.2.0' 

三、使用说明

xml文件中,注意蓝色字体部分

<android.support.design.widget.floatingactionbutton
android:id="@+id/floatingactionbutton"
android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_centerinparent="true"
android:src="@mipmap/ok"
app:borderwidth="0dp"
app:backgroundtint="#ff4011"
app:ripplecolor="#33728dff"
app:elevation="8dp"
app:pressedtranslationz="16dp"
/>

可以看到我们使用了app属性,则需要在根容器中添加这个属性。

xmlns:app="http://schemas.android.com/apk/res-auto" 

属性介绍:

1、app:borderwidth=""------------------边框宽度,通常设置为0 ,用于解决android 5.x设备上阴影无法正常显示的问题

2、app:backgroundtint=""---------------按钮的背景颜色,不设置,默认使用theme中coloraccent的颜色

3、app:ripplecolor=""--------------------点击的边缘阴影颜色

4、app:elevation=""----------------------边缘阴影的宽度

5、app:pressedtranslationz="16dp"-----点击按钮时,按钮边缘阴影的宽度,通常设置比elevation的数值大

另外我们希望点击按钮一个颜色,正常状态一个颜色 以提高用户体验,那么就是drawable文件夹中创建文件 floatbutton.xml

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@color/colornormal"></item>
<item android:state_pressed="true" android:drawable="@color/colorpressed"></item>
</selector>

然后我们设置floatactionbutton的backgroud为这个drawable文件即可,同时app:backgroundtint=""属性也可以不再设置

<android.support.design.widget.floatingactionbutton
android:id="@+id/floatingactionbutton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerinparent="true"
android:background="@drawable/floatbutton"
android:src="@mipmap/ok"
app:borderwidth="0dp"
app:ripplecolor="#33728dff"
app:elevation="8dp"
app:pressedtranslationz="16dp"
/>

效果图:

Android开发悬浮按钮 Floating ActionButton的实现方法