新的AppBarLayout flag:SCROLL_FLAG_SNAP

新版本的 Design Support Library(23.1.0)现在AppBarLayout里面包含了一个新的layout_scrollFlag :SCROLL_FLAG_SNAP。

在滚动结束后,如果view只是部分可见,它将滑动到最近的边界。比如,如果view的底部只有25%可见,它将滚动离开屏幕,而如果底部有75%可见,它将滚动到完全显示。

这意味着如果你实现自己的behaviour或者与AppbarLayout有关的东西,滚动不会在处于中间状态的时候停止。

我已经在我的AppBarLayout behavior 例子中使用了它,与预期的一致。

Untitled.gif

[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