本文主要是介绍recycleview中单个item上滑到顶部后悬停顶部的功能实现,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
需求背景
需要将列表中的第二个子view在滑动到顶端之后悬停在顶部,下拉之后取消悬停顶部,实现后效果如下图中所示,当上滑时候需要将列表中的综合销量价格选择栏目固定在顶部,当下拉后恢复列表中位置
实现过程:
看到这样的需求首先想到的一个词就是recycleview顶部吸附效果,在大略查找recycleview可用方法之后,发现没有这样的方法可以直接使用,google之后搜索到很多相似内容,都是stickyitemdecoration相关内容,直接下载源码,加入项目后测试发现不符合需求,遂放弃。
1.首次实现过程,通过利用CollapsingToolbarLayout的可折叠titlebar来实现该功能,通过将宫格区和需要悬停的区域都写到CollapsingToolbarLayout中,然后将Toolbar也写入到CollapsingToolbarLayout中,高度设置为与需要悬停控件高度一致,显示状态设置为invisible,这样也可以实现该功能,一下是布局文件详细:
<android.support.design.widget.CoordinatorLayoutandroid:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"><android.support.design.widget.AppBarLayoutandroid: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.CollapsingToolbarLayoutandroid:id="@+id/collapsing_toolbar"android:layout_width="match_parent"android:layout_height="wrap_content"android:fitsSystemWindows="true"app:layout_scrollFlags="scroll|exitUntilCollapsed|snap"><LinearLayoutandroid:layout_width="match_parent"android:layout_height="wrap_content"android:orientation="vertical">//图中的宫格区域控件<com.android.hshq.coupon.fragment.main.MainViewTabLayoutandroid
这篇关于recycleview中单个item上滑到顶部后悬停顶部的功能实现的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!