MD UI设计之Snackbar

Snackbar

Snackbar是谷歌的一个类似于dialog、Toast的通知用户方式,需与CoordinatorLayout配套使用。

使用方法:

①在activity中实例化CoordinatorLayout,这很重要,缺少实例化直接使用Snackbar,会报错null object。

②Snackbar的使用格式和Toast很类似,如下对比

Toast.makeText(this, "toast_text", Toast.LENGTH_SHORT).show();
Snackbar.make(mCoordinatorLayout, "snackbar_text", Snackbar.LENGTH_SHORT)
                .addCallback(new Snackbar.Callback() {
                    @Override
                    public void onDismissed(Snackbar transientBottomBar, int event) {
                        super.onDismissed(transientBottomBar, event);
                        //do something
                    }

                    @Override
                    public void onShown(Snackbar sb) {
                        super.onShown(sb);
                        //do something
                    }
                })
                .setAction("action", new View.OnClickListener() {
                    @Override
                    public void onClick(View view) {
                        //do something
                    }
                })
                .show();

在Snackbar的使用方法中:

.make()是必要方法,mCoordinatorLayout是CoordinatorLayout的实例化,"snackbar_text"是Snackbar所要显示的内容,Snackbar.LENGTH_SHORT是Snackbar显示的时长,这个参数有三个选择:LENGTH_SHORT、LENGTH_INDEFINITE、LENGTH_LONG。

.addCallback()不是必要方法,这个方法中可以重写两个方法,分别监听Snackbar的显示和消失,函数体内可以写自己的操作。

.setAction()不是必要方法,这个方法实现在Snackbar右侧显示一个按钮,"action"是按钮显示的内容,View.OnClickListener()监听按钮的点击事件,在重写的onClick()中实现操作。

.show()是必要方法,来使Snackbar显示出来。

上面Snackbar示例代码的效果如下:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值