悬浮按钮FloatingActionButton

Posted on 2017-07-23 08:58  番茄番茄  阅读(1720)  评论(0编辑  收藏  举报

FloatingActionButton也是Design Support 提供的一个控件,FloatingActionButton不属于主界面的一部分,而是位于另外一个维度。

别忘了添加闭包

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

 

代码运用如下,

<android.support.design.widget.FloatingActionButton
            android:id="@+id/fab"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="bottom|end"位置在屏幕的下部,end根据语言确定是屏幕左下角还是右下角
            android:layout_margin="25dp"
       app:elevation="8dp"设置高度,值越大,投影范围越大,投影效果越淡
android:src="@drawable/done" />

为FloatingActionButton设置点击事件,现获取控件实例,这里使用了一个SnackBar,功能和Toast基本相同,不过比Toast多了一个可以点击功能。

 FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
        fab.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
第一个参数是视图,传入当前页面的任意一个View都可以,Snackbar会利用View找到最外层布局。
用于展示Snackbar,第一个是Snackbar展示的内容,第三个是展示的市场。
如何在添加一个Action,可以和用户进行交互,.setAction欧两个参数,第一是一个按钮显示文字,可以点击,
第二个就是添加的监听事件。最后不要忘记调用.show(),让Snackbar显示出来。 Snackbar.make(v, "删除", Snackbar.LENGTH_SHORT).setAction("撤销", new View.OnClickListener() { @Override public void onClick(View v) { Toast.makeText(MainActivity.this, "撤销删除", Toast.LENGTH_SHORT).show(); } }).show(); } });

 但是SnackBar弹出的toast会挡住悬浮按钮。这个问题下个文章解决