如何禁止CoordinatorLayout + AppBarLayout 的滑动事件

CoordinatorLayout + AppBarLayout实现了展开和折叠,但是我只需要在展开上拉结束的时候
,AppBarLayout置顶后不能再下拉展开,通过别的点击事件再展开,如何实现?

设置layout_scrollFlags可以实现

你可以定义一个通过调用︰

CoordinatorLayout.LayoutParams params = (CoordinatorLayout.LayoutParams) appBarLayout.getLayoutParams();
AppBarLayout.Behavior behavior = (AppBarLayout.Behavior) params.getBehavior();
behavior.setDragCallback(new AppBarLayout.Behavior.DragCallback() {
@Override
public boolean canDrag(@NonNull AppBarLayout appBarLayout) {
return false;
}
});
通过总是返回 false ,您滚动 view 不会再由 ABL 控制。