继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

Snackbar

浮云间
关注TA
已关注
手记 146
粉丝 16
获赞 47
Snackbar代替Toast交互性更好
Snackbar.make(view,"消息已发出",Snackbar.LENGTH_SHORT).show();

但是有几个注意点,make方法的第一个参数是一个view,任何一个view都可以,但是官方推荐使用CoordinatorLayout,有俩个好处:
1.用户可以滑动(右滑)消除掉snackbar。
2.当snackbar出现的时候,布局会移动一些UI元素,比如右下角的悬浮按钮会自动上移。

view不一定直接就是CoordinatorLayout,该方法触发的时候,会一级一级的向上找,有没有CoordinatorLayout,如果找到顶层window decor's content view还没找到停止找,所以,还是建议直接使用CoordinatorLayout来当做这个参数,而不用系统浪费力气去找,官网是这样说的。

如果你的布局已经写好了,没有CoordinatorLayout,那么可以在最外面一层镶嵌上CoordinatorLayout,CoordinatorLayout就是相当于一个超级FrameLayout。(我发现一些5.0的手机,比如华为EMUI3.0,由于系统定制原因,是不支持状态栏变色的,但是如果你使用CoordinatorLayout就可以了)

snackbar显示是一个接一个的,不能同时显示很多。说到这里,我想起了一个问题,就是toast如果同时或者短时间内显示很多个toast,界面会一直跳啊跳的,感觉toast消失不掉,神烦!其实有一个方法,就是使用application来当做context,那么就会显示最后一个toast,只显示一个,这个是从其他地方看到的技巧。

原文链接:http://www.apkbus.com/blog-880881-63313.html

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP