CoordinatorLayout 和 AppBarLayout 实现的局部点击按钮实现滑动某一个固定的距离

实现的效果如下:

CoordinatorLayout 和 AppBarLayout 实现的局部点击按钮实现滑动某一个固定的距离_第1张图片

如果需要的只是折叠效果 可以看这遍文章点击跳转!!!!!!!!!!!!!!!!!!!!

具体代码如下

    findViewById(R.id.tv).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                CoordinatorLayout.Behavior behavior =
                        ((CoordinatorLayout.LayoutParams) appbarlayout
                                .getLayoutParams())
                                .getBehavior();
                if (behavior instanceof AppBarLayout.Behavior) {
                    AppBarLayout.Behavior appBarLayoutBehavior = (AppBarLayout
                            .Behavior) behavior;
                    int hight = appbarlayout.getHeight();
                    // 滑动 计算的高度
                    appBarLayoutBehavior.setTopAndBottomOffset(-hight);
                }

            }
        });
        findViewById(R.id.text).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                CoordinatorLayout.Behavior behavior =
                        ((CoordinatorLayout.LayoutParams) appbarlayout
                                .getLayoutParams())
                                .getBehavior();
                if (behavior instanceof AppBarLayout.Behavior) {
                    AppBarLayout.Behavior appBarLayoutBehavior = (AppBarLayout
                            .Behavior) behavior;
                    //快熟滑动到顶部
                    appBarLayoutBehavior.setTopAndBottomOffset(0);
                }

            }
        });

这里  appbarlayout是AppBarLayout 的id

你可能感兴趣的:(Android,知识点记录)