本文介绍了使用AppBarLayout.Behavior.DragCallback来控制折叠工具栏布局的滚动的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我希望能够启用和禁用折叠工具栏的滚动。谁能告诉我一个如何使用AppBarLayout.Behavior.DragCallback的例子?

I want to be able to enable and disable the scroll of collapsing toolbar. Can anyone show me an example how to use AppBarLayout.Behavior.DragCallback?

推荐答案

为了启用/禁用折叠工具栏的滚动,您可以提供自定义DragCallback作为AppBarLayout行为的一部分。下面是一个示例代码:

In order to enable/disable the scroll of the collapsing toolbar you can provide a custom DragCallback as part of your AppBarLayout's behavior. Here is a sample code:

private void setAppBarDragging(final boolean newValue) {
    AppBarLayout appBarLayout = (AppBarLayout) findViewById(R.id.appbar_layout);
    CoordinatorLayout.LayoutParams params =
            (CoordinatorLayout.LayoutParams) appBarLayout.getLayoutParams();
    AppBarLayout.Behavior behavior = new AppBarLayout.Behavior();
    behavior.setDragCallback(new AppBarLayout.Behavior.DragCallback() {
        @Override
        public boolean canDrag(AppBarLayout appBarLayout) {
            return newValue;
        }
    });
    params.setBehavior(behavior);
}

这篇关于使用AppBarLayout.Behavior.DragCallback来控制折叠工具栏布局的滚动的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-10 20:26