Material Design之Snackbar
2017-08-23 本文已影响77人
XiMiMax
原创作品,转载请注明出处
如果你还不知道什么是Material Design?那就点这里:Material Design你真的了解吗?
官网说明
https://developer.android.com/reference/android/support/design/widget/Snackbar.html
public final class Snackbar
extends BaseTransientBottomBar<Snackbar>
Snackbar提供关于操作的轻量级反馈。他们在手机屏幕的底部显示了一个简短的信息,并且在更大的设备上显示在左下角。snackbar出现在屏幕上的所有其他元素之上,同一时间内只有一个显示。
会在超时或在屏幕上其他地方的用户交互之后自动消失,特别是在交互之后,这些交互会召唤一个新的surface 或 activity。
snackbar可以在屏幕上滑动。
先上代码
LinearLayout linearLayout;
Button btnSnackbar;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
linearLayout = (LinearLayout) findViewById(R.id.linear_layout);
btnSnackbar = (Button)findViewById(R.id.btn_snackbar);
btnSnackbar.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
showSnackbar();
}
});
}
private void showSnackbar() {
Snackbar.make(linearLayout,"Demo",Snackbar.LENGTH_LONG)//制作一个Snackbar来显示一条消息
.setAction("点击", new View.OnClickListener() {//设置要显示在这个Snackbar中的动作。
@Override
public void onClick(View view) {
Toast.makeText(MainActivity.this,"toast",Toast.LENGTH_SHORT).show();
}
})
.setDuration(Snackbar.LENGTH_LONG)//设置显示时间长度
.show();
}
效果图
可以看出Snackbar的使用是非常简单的,运用了构造器模式,清晰快捷。这样我们就不用千篇一律的使用Dialog或者PopupWindow了。换一种方式换一种风格。
每星期至少一篇跟新本系列,感兴趣可以关注。
一起学习,一起进步。