新版本的 Design Support Library(23.1.0)现在AppBarLayout里面包含了一个新的layout_scrollFlag :SCROLL_FLAG_SNAP。
在滚动结束后,如果view只是部分可见,它将滑动到最近的边界。比如,如果view的底部只有25%可见,它将滚动离开屏幕,而如果底部有75%可见,它将滚动到完全显示。
这意味着如果你实现自己的behaviour或者与AppbarLayout有关的东西,滚动不会在处于中间状态的时候停止。
我已经在我的AppBarLayout behavior 例子中使用了它,与预期的一致。
[0]: https://plus.google.com/+AndroidDevelopers/posts/RZutBRWN6sH
[1]: https://github.com/saulmm/CoordinatorBehaviorExample
要使用新版本的 Design Support Library,更新gradle文件(前提是你更新了最新的sdk):
compile 'com.android.support:appcompat-v7:23.1.0"' compile "com.android.support:design:23.1.0"
然后在AppbarLayout的子控件里加上:
app:layout_scrollFlags="scroll|exitUntilCollapsed|snap"
比平时的多了个snap。
另外不久前我们介绍的 smooth-app-bar-layout 项目貌似就是为了解决这个问题,现在看来似乎用不着了。
来自: https://plus.google.com/+SaulMolineroMalvido/posts/gwyBQLmtXke