Java 在NestedScrollView中隐藏滚动视图并获取它';s位置

Java 在NestedScrollView中隐藏滚动视图并获取它';s位置,java,android,xml,user-interface,material-design,Java,Android,Xml,User Interface,Material Design,我想在滚动NestScrollView时隐藏黄色的LinearLayout。最好具有视差效果。我已经能够实现的是增加alpha并将可见性设置为在appBar scroll上运行。但我希望它下面的recyclerView在我滚动时占据它的空间。谢谢 我是如何让它完美工作的 1。高于RecyclerView 作为具有不同布局的行添加,使用getItemViewType()为第一行指定不同的视图 2。在具有视差效果的RecyclerView滚动条上消失 必须重写AppBar的addOnOffsetCh

我想在滚动NestScrollView时隐藏黄色的LinearLayout。最好具有视差效果。我已经能够实现的是增加alpha并将可见性设置为在appBar scroll上运行。但我希望它下面的recyclerView在我滚动时占据它的空间。谢谢


我是如何让它完美工作的

1。高于RecyclerView

作为具有不同布局的行添加,使用getItemViewType()为第一行指定不同的视图

2。在具有视差效果的RecyclerView滚动条上消失

必须重写AppBar的addOnOffsetChangedListener(),它为我提供了verticallOffset变量,我使用该变量仅转换recyclerView中的第一行

recyclerView.getChildAt(0).setTranslationY(verticallOffset / 2);
3。当它消失时,RecyclerView将取而代之

仍在使用垂直偏移:

 if (alpha < -200) {
            readingsRecyclerAdapter.hideFirstRow();
        }
已删除的通知项(0);这一点很重要,因为它会导致recyclerview占用第一行的空白空间

public void hideFirstRow() {
        if (headerShowing) {
            appsList.remove(0);
            notifyItemRemoved(0);
            headerShowing = false;
        }
    }