Android开发之FloatingActionButton的使用

前言:FloatingActionButton又是V7包下的一个控件,还是MD的设计风格,今天我们就来讨论一下FAB的兼容性开发!看了好多介绍FAB的用法,发现hongyang大神的讲解不错,不过我感觉写的还是有点多,我会用最简单的最少的代码,来介绍FAB的使用,以及兼容性开发。

-----------------------------------分割线-------------------------------------

hongyang的讲解:《FloatingActionButton 完全解析[Design Support Library(2)]》  ,感兴趣的可以参考下。

-----------------------------------分割线-------------------------------------

1.兼容性注意,需要写两个layout/layout-v21

layout-v21:添加layout_margin="16dp"
layout: 添加layout_margin="0dp"

2.各个属性:

app:backgroundTint="?attr/colorPrimary"//背景着色

app:elevation="10dp"//阴影深度

app:fabSize="mini"//大小:normal,mini

app:elevation="10"//正常显示的阴影大小,5.x效果

app:pressedTranslationZ="12dp"//点击时显示的阴影大小,5.x效果

app:borderWidth="0dp"//添加阴影,5.x效果

app:rippleColor="#ff0"//按下时候显示的背景色,5.x效果

-----------------------------------分割线-------------------------------------

4.x效果显示:


代码:

    <android.support.design.widget.FloatingActionButton
        android:id="@+id/fab"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentRight="true"
        android:layout_margin="0dp"
        android:onClick="rotate"
        android:src="@drawable/ic_add_white_24dp"
        app:backgroundTint="?attr/colorPrimary"
        app:elevation="10dp"
        app:fabSize="mini" />

旋转效果代码:

private boolean reverse = false;
    public void rotate(View view) {
        float toDegree = reverse ? -180f : 180f;
        ObjectAnimator animator = ObjectAnimator.ofFloat(view, "rotation", 0.0f, toDegree).setDuration(400);
        animator.start();
        reverse = !reverse;
    }
-----------------------------------分割线-------------------------------------

5.x效果显示:



代码:

<android.support.design.widget.FloatingActionButton
        android:id="@+id/fab"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentRight="true"
        android:layout_margin="16dp"
        android:clickable="true"
        android:onClick="rotate"
        android:src="@drawable/ic_add_white_24dp"
        app:backgroundTint="?attr/colorPrimary"
        app:elevation="10dp"
        app:fabSize="normal"
        app:pressedTranslationZ="12dp"
        app:rippleColor="#ff0" />
旋转代码同4.x一样。

-----------------------------------分割线-------------------------------------


  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

等待着冬天的风

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值