XRecyclerView上拉刷新下拉加载

来源:互联网 发布:入侵学校数据库 编辑:程序博客网 时间:2024/06/06 02:01

到依赖:

compile 'com.jcodecraeer:xrecyclerview:1.3.2'
布局文件:(item布局根据自己需要的定义)

<com.jcodecraeer.xrecyclerview.XRecyclerView    android:id="@+id/recyclerview"    android:layout_width="fill_parent"    android:layout_height="fill_parent" />
适配器:

public class MyAdapter extends RecyclerView.Adapter<MyAdapter.ViewHolder> {    public List<been.DataBean.ReturnDataBean.ComicsBean> datas = null;    public Context context;    public MyAdapter(List<been.DataBean.ReturnDataBean.ComicsBean> datas,Context context) {        this.datas = datas;        this.context = context;    }    //创建新View,被LayoutManager所调用    @Override    public ViewHolder onCreateViewHolder(ViewGroup viewGroup, int viewType) {      //获取item布局 View view = LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.item,viewGroup,false);        ViewHolder vh = new ViewHolder(view);        return vh;    }    //将数据与界面进行绑定的操作    @Override    public void onBindViewHolder(ViewHolder viewHolder, int position) {      //给item里面的东西设置值 viewHolder.name.setText(datas.get(position).getName());        viewHolder.tag.setText(datas.get(position).getTags().toString());        viewHolder.description.setText(datas.get(position).getDescription());        viewHolder.contag.setText("月票"+datas.get(position).getConTag());        Glide.with(context).load(datas.get(position).getCover()).into(viewHolder.image);    }    //获取数据的数量    @Override    public int getItemCount() {        return datas.size();    }    //自定义的ViewHolder,持有每个Item的的所有界面元素    public static class ViewHolder extends RecyclerView.ViewHolder {     //获取item里面的id public TextView name,tag,description,contag;        public ImageView image;        public ViewHolder(View view){            super(view);            name = (TextView) view.findViewById(R.id.name);            tag = (TextView) view.findViewById(R.id.tag);            description = (TextView) view.findViewById(R.id.description);            contag = (TextView) view.findViewById(R.id.contag);            image = (ImageView)view.findViewById(R.id.image);        }    }}


主方法


public class MainActivity extends AppCompatActivity implements XRecyclerView.LoadingListener{    private XRecyclerView mRecyclerView;    private MyAdapter mAdapter;    private String urlPath ="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=";    private List<been.DataBean.ReturnDataBean.ComicsBean> list;    int page = 1;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        x.view().inject(this);        xutils(page);        mRecyclerView = (XRecyclerView)findViewById(R.id.recyclerview) ;        LinearLayoutManager layoutManager = new LinearLayoutManager(this);        layoutManager.setOrientation(LinearLayoutManager.VERTICAL);        mRecyclerView.setLayoutManager(layoutManager);        mRecyclerView.setLoadingListener(this);    }    private void xutils(final int page) {        RequestParams entity = new RequestParams(urlPath+page);        x.http().get(entity, new Callback.CommonCallback<String>() {            @Override            public void onSuccess(String result) {                been been = new Gson().fromJson(result, test.com.xrecyclerview.been.class);                list = new ArrayList<been.DataBean.ReturnDataBean.ComicsBean>();                list.addAll(been.getData().getReturnData().getComics());                mAdapter = new MyAdapter(list,MainActivity.this);                mRecyclerView.setAdapter(mAdapter);            }            @Override            public void onError(Throwable ex, boolean isOnCallback) {            }            @Override            public void onCancelled(CancelledException cex) {            }            @Override            public void onFinished() {                //刷新完成                mRecyclerView.refreshComplete();                mRecyclerView.loadMoreComplete();            }        });    }    @Override    public void onRefresh() {//刷新        page = 1;        xutils(page);    }    @Override    public void onLoadMore() {// 加载更多        page++;        xutils(page);    }}



原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 榴莲和虾同吃了怎么办 吃榴莲和虾中毒怎么办 榴莲和虾一起吃怎么办 狗被别人下毒了怎么办 大掌门2没存元宝怎么办 大掌门2转换阵容怎么办 率土之滨s2绝版怎么办 异界气息的装备怎么办 vivo电板没电了怎么办 门套拼接有缝隙怎么办 公司如果一直没有上税收入怎么办 赛车输了俩百万怎么办 交pk金员工不交怎么办 员工不想交pk金怎么办 心悦光环领错角色怎么办 心悦光环领错了怎么办 扑克牌1到13洗后怎么办 南通长牌没钱了怎么办 镇魔曲手游阵营人数已满怎么办 镇魔曲忘记在哪个区怎么办 登录镇魔曲卡在实名验证怎么办 电脑玩联盟花屏怎么办 优盘文件或目录损坏怎么办 苹果下吃鸡设备不兼容怎么办 龙之谷账号忘了怎么办 不花钱的排风除湿怎么办 苹果平板id密码忘了怎么办 苹果平板忘记id及密码怎么办 饥荒抓到的兔子怎么办 苹果手机下载不了王者荣耀怎么办 ipad登录显示验证失败怎么办 苹果手机系统内存太大怎么办 ipad玩游戏没声音怎么办 微信活跃度低怎么办 想开通淘宝直播粉丝不够怎么办 下巴长泡泡还痒怎么办 脚起泡泡很痒怎么办 脚痒还有小泡泡怎么办 外阴长了肉疙瘩怎么办 嘴巴里泡泡破了怎么办 脚上泡泡破了怎么办