现在app很多有粘性头部的效果,网上搜了下实现方法,发现大同小异,大部分都是根据recyclerview的itemdecoration来实现。我在做这个功能的时候可能没有这么麻烦,直接根据recyclerview的滑动监听来实现这个效果的,好了,先看图:
一、实现布局
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<View
android:id="@+id/tv"
android:layout_width="match_parent"
android:layout_height="@dimen/statusbar_view_height"
android:background="@color/gray_f2f2f2" />
<com.aspsine.swipetoloadlayout.SwipeToLoadLayout
android:id="@+id/swipeToLoadLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:descendantFocusability="blocksDescendants"
android:overScrollMode="never"
app:default_to_loading_more_scrolling_duration="500"
app:load_more_complete_delay_duration="0"
app:load_more_final_drag_offset="@dimen/load_more_final_offset_google"
app:load_more_trigger_offset="@dimen/load_more_trigger_offset_google"
app:refresh_final_drag_offset="@dimen/refresh_final_offset_google"
app:refresh_trigger_offset="@dimen/refresh_trigger_offset_google"
app:swipe_style="blew">
<include
android:id="@id/swipe_refresh_header"
layout="@layout/layout_refresh_header" />
<android.support.v7.widget.RecyclerView
android:id="@id/swipe_target"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:clipToPadding="false"
android:overScrollMode="never" />
<include
android:id="@id/swipe_load_more_footer"
layout="@layout/layout_refresh_footer" />
</com.aspsine.swipetoloadlayout.SwipeToLoadLayout>
<!-- 标题栏布局 -->
<include layout="@layout/item_autotrophy_title_bar" />
<!-- 筛选栏 -->
<include layout="@layout/item_autotrophy_type" />
</RelativeLayout>
标题栏布局:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/ll_bg"
android:layout_width="match_parent"
android:layo