Android 中使用中使用RecyclerView实现底部翻页实现底部翻页
RecyclerView 是Android L版本中新添加的一个用来取代ListView的SDK,它的灵活性与可替代性比listview更好。接下来通过
一系列的文章讲解如何使用RecyclerView,彻底抛弃ListView.
最近在做pad端的app,需要一个像网页一样效果,之前使用addView方式,页码少的时候还可以,能实现效果,但是碰到了
一个1000多页的界面,就GG了,页码半天显示不出来,于是使用RecyclerView作为容器,主要是看中RecyclerView的复用,
不说了,看代码:
BottomPagerView xml布局:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<LinearLayout
android:id="@+id/bottom_ll_content"
android:layout_gravity="center_vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:layout_marginLeft="10px"
android:layout_marginRight="10px"
android:layout_marginTop="10px"
android:orientation="horizontal">
<Button
android:id="@+id/pre_page"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="@dimen/y5"
android:paddingBottom="@dimen/x4"
android:paddingLeft="@dimen/y5"
android:paddingRight="@dimen/y5"
android:paddingTop="@dimen/x4"
android:text="上一页"
android:textSize="@dimen/middlesize"/>
<android.support.v7.widget.RecyclerView
android:id="@+id/recycler"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<Button
android:id="@+id/next_page"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/y5"
android:paddingBottom="@dimen/x4"
android:paddingLeft="@dimen/y5"
android:paddingRight="@dimen/y5"
android:paddingTop="@dimen/x4"
android:text="下一页"
android:textSize="@dimen/middlesize"/>
</LinearLayout>
</LinearLayout>
adapter的xml布局:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<RadioButton
android:id="@+id/bottom_item_rb"
android:layout_width="wrap_content"
android:text="1"
android:gravity="center_vertical"
android:background="@drawable/tab_select"
android:layout_height="wrap_content"/>
</LinearLayout>
BottomPagerView 代码:
public class BottomPagerView extends LinearLayout {
private final LinearLayout ll_content;
private int pageSize = 0;
private Button pre_page;
private Button next_page;