需求背景
需要将列表中的第二个子view在滑动到顶端之后悬停在顶部,下拉之后取消悬停顶部,实现后效果如下图中所示,当上滑时候需要将列表中的综合销量价格选择栏目固定在顶部,当下拉后恢复列表中位置
实现过程:
看到这样的需求首先想到的一个词就是recycleview顶部吸附效果,在大略查找recycleview可用方法之后,发现没有这样的方法可以直接使用,google之后搜索到很多相似内容,都是stickyitemdecoration相关内容,直接下载源码,加入项目后测试发现不符合需求,遂放弃。
1.首次实现过程,通过利用CollapsingToolbarLayout的可折叠titlebar来实现该功能,通过将宫格区和需要悬停的区域都写到CollapsingToolbarLayout中,然后将Toolbar也写入到CollapsingToolbarLayout中,高度设置为与需要悬停控件高度一致,显示状态设置为invisible,这样也可以实现该功能,一下是布局文件详细:
<android.support.design.widget.CoordinatorLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<android.support.design.widget.AppBarLayout
android:id="@+id/appbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/white_color"
app:elevation="0dp"
app:layout_behavior="android.support.design.widget.AppBarLayout$Behavior">
<android.support.design.widget.CollapsingToolbarLayout
android:id="@+id/collapsing_toolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fitsSystemWindows="true"
app:layout_scrollFlags="scroll|exitUntilCollapsed|snap">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
//图中的宫格区域控件
<com.android.hshq.coupon.fragment.main.MainViewTabLayout
android:id="@+id/scroll_other_tab"
a