MaterialDesign使用 (三) SnackBar的使用#
---
2016/9/9 星期五 17:32:17
SnackBar是一个轻量级的控件,他和Toast控件一样是弹出一个提示信息,使用方法跟Toast大题相似.
SnackBar的具体使用:
首先需要在项目中加入Design包
dependencies {
compile 'com.android.support:design:24.1.1'
}
在你需要的使用提示的地方加上如下代码:
(布局文件就是几个按钮所以代码就不贴上来了)
public void onClick1(View view) {
Snackbar.make(view,"This is a SnackBar 1!",Snackbar.LENGTH_LONG).show();
}
onClick1(View view)是一个按钮的点击事件,使用方法根Toast基本相似。###
不过注意的是: Toast的make()方法的第一个参数是传的一个Activity,而这里是传一个具体的View对象.
SnackBar有个setAction()方法,方法中有一个OnClickListener接口,可以在接口的回调函数中执行相应的操作:
public void onClick2(View view) {
Snackbar.make(view,"This is a SnackBar 2!",Snackbar.LENGTH_LONG)
/*加上动作监听*/
.setAction("OK", new View.OnClickListener() {
@Override
public void onClick(View view) {
Toast.makeText(MainActivity.this, "我是SnackBar调用的事件...", Toast.LENGTH_SHORT).show();
}
}).show();
}
setAction()接收两个参数:
参数一:是点击的文字,当点击了文字后就会执行接口中的回调方法,并且关闭提示;
参数二:是接听接口:OnClickListener;
SnackBar还有一种滑动关闭的操作,不过需要这种操作需要使用到MaterialDesign包中一个重量级的布局CoordinatorLayout,这个布局可以让它的主布局实现很多很牛逼的特效。这个布局目前可以直接当作一个贞布局后面的博客再具体介绍。这里就直接用一下看看效果!
<android.support.design.widget.CoordinatorLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="onClick3"
android:text="弹出SnackBar3" />
</android.support.design.widget.CoordinatorLayout>
把需要弹出SnackBar的控件包裹在CoordinatorLayout布局中就行了
public void onClick3(View view) {
Snackbar.make(view,"This is a SnackBar 3 !",Snackbar.LENGTH_LONG).show();
}