安卓recycleView添加viewheader

来源:互联网 发布:淘宝怎么优化宝贝排名靠前 编辑:程序博客网 时间:2024/06/05 08:49

 在app的build.gradle中,添加

compile 'com.bartoszlipinski:recyclerviewheader2:2.0.1'



新建一个xml的布局,这些你要的viewHeader的布局样子:(这是继承RelativeLayout的)

recycler_view_header.xml
<?xml version="1.0" encoding="utf-8"?><com.bartoszlipinski.recyclerviewheader2.RecyclerViewHeader xmlns:android="http://schemas.android.com/apk/res/android"    android:id="@+id/header"    android:layout_width="match_parent"    android:layout_height="wrap_content"    android:layout_gravity="top">    <Button        android:id="@+id/bt_test"        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:background="@android:color/holo_orange_light"        android:gravity="center"        android:text="zhang"        android:textColor="@android:color/white" />    <TextView        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:layout_below="@+id/bt_test"        android:background="@android:color/holo_orange_light"        android:gravity="center"        android:text="zhang phil @ csdn"        android:textColor="@android:color/white" /></com.bartoszlipinski.recyclerviewheader2.RecyclerViewHeader>

在布局文件的recycleView下面,添加。

<FrameLayout    android:layout_width="match_parent"    android:layout_height="match_parent">    <android.support.v7.widget.RecyclerView        android:id="@+id/recyclerview"        android:layout_width="match_parent"        android:layout_height="match_parent">    </android.support.v7.widget.RecyclerView>    <include layout="@layout/recycler_view_header" />    <TextView        android:id="@+id/noResult"        style="@style/ContactItemHeader"        android:text="@string/contact_no_result" />    <TextView        android:id="@+id/anno"        android:layout_width="80dp"        android:layout_height="80dp"        android:layout_gravity="center"        android:alpha="0.5"        android:background="@drawable/contact_anno_bg"        android:gravity="center"        android:textColor="@color/white"        android:textSize="@dimen/contact_anno_font" />    <com.tpout.contactrecycler.SideBar        android:id="@+id/sideBar"        android:layout_width="30dp"        android:layout_height="match_parent"        android:layout_gravity="end|center" /></FrameLayout>


       https://github.com/blipinsk/RecyclerViewHeader

  1. Get the RecyclerViewHeader view object with:

    RecyclerViewHeader header = (RecyclerViewHeader) findViewById(R.id.header);

  2. Attach RecyclerViewHeader to your RecyclerView:

    RecyclerView recyclerView = (RecyclerView) findViewById(R.id.recycler_view); // set LayoutManager for your RecyclerView header.attachTo(recyclerView);