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会挡住悬浮按钮。这个问题下个文章解决