背景:
众所周知, Android中的Snackbar 自带从左向右滑动消失效果, 为什么有时候效果却没有了????
最近需要做几个Snackbar的效果, 发现有些页面可以滑动消失, 有些页面不能消失, 百思不得其解. 小伙伴们是不是也有遇到这样的情况呢???
后面查看Snackbar的源码才知道, 在Snackbar存在layout最外层要是 CoordinatorLayout 控件:
1, Snackbar源码: (注意高亮方法 setUpBehavior())
![](https://img.haomeiwen.com/i4671133/60bb040bd923a212.png)
2.
![](https://img.haomeiwen.com/i4671133/6aca273a5e465490.png)
3. 所以说只有你的layout, 外层layout是CoordinatorLayout , 才会有SwipeDismissBehavior. 不然你的Snackbar是无法滑动消失的.
4. 附带一点点其他知识, Snackbar的默认出场方式是, 从底部出现, 并从底部消失.
Snackbar 还有一个淡出淡出, 外加居中缩放的入场和出场的效果.
![](https://img.haomeiwen.com/i4671133/ae08436bd790f03d.png)
网友评论