HttpUtils请求网络+xlistview上拉刷新,下拉加载

private void getData(final int i, String url) {
        HttpUtils httpUtils = new HttpUtils();

        httpUtils.configCurrentHttpCacheExpiry(0);

        httpUtils.send(HttpMethod.GET, url, new RequestCallBack<String>() {

            @Override
            public void onFailure(HttpException arg0, String arg1) {

            }

            @Override
            public void onSuccess(ResponseInfo<String> arg0) {
                String result = arg0.result;

                Gson gson = new Gson();

                DataBeantext beantext = gson.fromJson(result, DataBeantext.class);
                Message msg = Message.obtain();
                msg.obj = beantext.data;
                msg.what = i;
                handler.sendMessage(msg);

            }

        });
    }



// 加载
    @Override
    public void onLoadMore(){
        new Thread()
        {
        public void run() {
            getData(2, more);
            
        };    
        }.start();
    }

    // 刷新
    @Override
    public void onRefresh() {
        new Thread()
        {
        public void run() {
            getData(3, refresh);
            
        };    
        }.start();

    }


主方法里设置


    // 停止加载更多/刷新
    public void loadOver() {
        // 停止加载更多
        xlistview.stopLoadMore();
        // 停止刷新
        xlistview.stopRefresh();
        // 设置刷新时的时间
        xlistview.setRefreshTime(getTime());

    }

    public String getTime() {

        SimpleDateFormat format = new SimpleDateFormat("hh:mm:ss");

        Date date = new Date();
        String time = format.format(date);
        return time;

    }
主方法里设置---------------------------------------------------------------------------------------   



        // 下拉刷新是否激活
        xlistview.setPullRefreshEnable(true);
        // 加载更多是否激活
        xlistview.setPullLoadEnable(true);
         // xlistView刷新和加载更多的监听  
        xlistview.setXListViewListener(this); 


handler里设置-------------------------------------------------------------------------------------------

private Handler handler = new Handler() {
        private MyListViewAdapter adapter;

        public void handleMessage(Message msg) {
            int i = msg.what;

            switch (i) {
            // 初始数据
            case 1:
                list = (LinkedList<Datas>) msg.obj;

                adapter = new MyListViewAdapter(getActivity(), list);
                xlistview.setAdapter(adapter);

                break;
            // 下拉刷新
            case 3:
                list.clear();
                for (Datas dataBean : (LinkedList<Datas>) msg.obj) {
                    // 象开头添加
                    list.addFirst(dataBean);
                }
                // 刷新适配器
                adapter.notifyDataSetChanged();
                loadOver();

                break;
            // 下拉加载
            case 2:
                // 获得下拉刷新和上拉加载数据
                for (Datas dataBean : (LinkedList<Datas>) msg.obj) {
                    // 象结尾添加
                    list.addLast(dataBean);
                }
                // 刷新适配器
                adapter.notifyDataSetChanged();
                loadOver();
                break;
            }
        };
    };

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值