XRecyclerView 上拉刷新、下拉加载
来源:互联网 发布:mac帧ip类型数据长度 编辑:程序博客网 时间:2024/06/05 15:44
先导入依赖:
compile 'com.jcodecraeer:xrecyclerview:1.3.2'
在activity_main.xml中:
<com.jcodecraeer.xrecyclerview.XRecyclerView android:id="@+id/xrecycview" android:layout_width="match_parent" android:layout_height="wrap_content"></com.jcodecraeer.xrecyclerview.XRecyclerView>
我们用的接口:
http://app.u17.com/v3/appV3_3/android/phone/list/commonComicList?argValue=23&argName=sort&argCon=0&android_id=4058040115108878&v=3330110&model=GT-P5210&come_from=Tg002&page=
page=“任意数值,用来分页加载”
在MainActivity中:
public class MainActivity extends AppCompatActivity implements XRecyclerView.LoadingListener{ private XRecyclerView xrecycview; private MyBaseAdapter adapter; private List<Data.DataBean.ReturnDataBean.ComicsBean> list=new ArrayList<>(); String path="http://app.u17.com/v3/appV3_3/android/phone/list/commonComicList?argValue=23&argName=sort&argCon=0&android_id=4058040115108878&v=3330110&model=GT-P5210&come_from=Tg002&page="; int paga=1; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); xrecycview= (XRecyclerView) findViewById(R.id.xrecycview); LinearLayoutManager manager=new LinearLayoutManager(this); xrecycview.setLayoutManager(manager); manager.setOrientation(LinearLayoutManager.VERTICAL); xrecycview.setLoadingListener(this); xrecycview.setPullRefreshEnabled(true); xrecycview.setLoadingMoreProgressStyle(ProgressStyle.BallPulseRise); adapter=new MyBaseAdapter(list); xrecycview.setAdapter(adapter); getHttp(); } private void getHttp() { //xutils网络请求 RequestParams params=new RequestParams(path+paga); x.http().get(params, new Callback.CommonCallback<String>() { @Override public void onSuccess(String result) { Data data = new Gson().fromJson(result, Data.class); list.addAll(data.getData().getReturnData().getComics()); adapter=new MyBaseAdapter(list); xrecycview.setAdapter(adapter); adapter.notifyDataSetChanged(); } @Override public void onError(Throwable ex, boolean isOnCallback) { } @Override public void onCancelled(CancelledException cex) { } @Override public void onFinished() { } }); } @Override public void onRefresh() { list.clear(); paga=1; getHttp(); adapter.notifyDataSetChanged(); xrecycview.refreshComplete(); } @Override public void onLoadMore() { paga++; getHttp(); adapter.notifyDataSetChanged(); xrecycview.loadMoreComplete(); }}
创建一个MyBaseAdapter.class类:
public class MyBaseAdapter extends RecyclerView.Adapter<MyBaseAdapter.MyViewHolder> { private List<Data.DataBean.ReturnDataBean.ComicsBean> list=new ArrayList<>(); public MyBaseAdapter(List<Data.DataBean.ReturnDataBean.ComicsBean> list) { this.list = list; } @Override public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { View view= LayoutInflater.from(parent.getContext()).inflate(R.layout.itme,parent,false); return new MyViewHolder(view); } @Override public void onBindViewHolder(MyViewHolder holder, int position) { holder.tv1.setText(list.get(position).getName()); x.image().bind(holder.iv1,list.get(position).getCover()); } @Override public int getItemCount() { return list.size(); } public class MyViewHolder extends RecyclerView.ViewHolder { private ImageView iv1; private TextView tv1; public MyViewHolder(View itemView) { super(itemView); iv1=itemView.findViewById(R.id.iv1); tv1=itemView.findViewById(R.id.tv1); } }}
创建App.class类:
public class App extends Application { @Override public void onCreate() { super.onCreate(); x.Ext.init(this); x.Ext.setDebug(BuildConfig.DEBUG); }在AndroidManifest里:
android:name=".app.App"
阅读全文
0 0
- XRecyclerView下拉刷新和上拉加载
- XRecyclerView上拉刷新下拉加载
- XRecyclerView 上拉刷新、下拉加载
- XRecyclerView 上拉加载 下拉刷新
- XRecyclerView下拉刷新,上拉加载
- 使用XRecyclerview下拉刷新,上拉加载
- XRecyclerView的上拉加载,下拉刷新
- XRecyclerView+上拉加载下拉刷新+多条目加载
- 支持下拉刷新上拉加载xrecyclerview的基本使用
- XRecyclerView 实现下拉刷新和上拉加载更多
- xRecyclerView简单实现下拉刷新和上拉加载
- xRecyclerView简单实现下拉刷新和上拉加载
- Xrecyclerview的使用(上拉刷新,下拉加载)
- Android XRecyclerView简单实现上拉刷新,下拉加载
- XRecyclerView的下拉刷新上拉加载功能
- XRecyclerView的下拉刷新和上拉加载
- RecyclerView的上拉加载下拉刷新-xRecyclerView
- Mvp+OkHttp+XRecyclerView------上拉加载下拉刷新
- opencv中标定函数calibrateCamera
- Android4.2.2编译笔记:从Ubuntu环境开始
- 铁轨,紫书P140UVa514
- TP框架的使用(ThinkPHP3.2.2)
- shell脚本连接、读写、操作mysql数据库实例
- XRecyclerView 上拉刷新、下拉加载
- golang -strconv包常用函数笔记
- 我的思维导图
- hiho一下 第167周
- LeetCode 1. Two Sum (Easy)
- LAMP之CentOS5_JDK安装
- Python 添加windows server服务程序
- Reverse String
- Elasticsearch 集群优化总结