Android M之新控件—Snackbar
Snackbar近乎于Toast的存在。
SnackBar会对用户的操作提供一个轻量级的反馈,将一条简短的信息显示在手机屏幕的底部,在较大的设备上则显示在左下方。SnackBar将会显示在高于大多数元素的图层上,他们和浮动操作按钮在同一个海拔。但是,浮动操作按钮海拔低于对话框,下表,和导航的抽屉。
SnackBar在显示超时后或者在其他地方出现用户交互后,会自动消失在屏幕上,尤其是当前页面上出现新的表平面或者activity,SnackBar会被滑出屏幕。
1.SnackBar不包含图标
2.SnackBar同一时间只能显示一个
3.SnackBar只能包含一个操作
4.SnackBar由屏幕底部升起
5.操作按钮:字体14sp,全部大写
文字:14sp
移动高度:48 dp(单行),80 dp(多行)
高度:48 dp
默认背景填充:# 323232 ,不透明
6.如果有浮动按钮与SnackBar处于同一海拔,应该移动浮动按钮,为SnackBar腾出空间。
在SnackBar上可以设置一些操作:通过setAction()方法。
在SnackBar消失后可以设置一些操作:通过setCallBack()方法。
代码:
Snackbar.make(view,"This is a SnackBar", Snackbar.LENGTH_LONG)
.setCallback(new Snackbar.Callback() {
@Override
public void onDismissed(Snackbar snackbar,intevent) {
Toast.makeText(MainActivity.this,"callback",Toast.LENGTH_LONG).show();
super.onDismissed(snackbar, event);
}
})
.setAction("ACTION",new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(MainActivity.this,"ACTION onclick",Toast.LENGTH_LONG).show();
}
}).show();