xlistView

来源:互联网 发布:哈工大gpa算法 编辑:程序博客网 时间:2024/06/16 13:11
@Override
    public void onActivityCreated(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onActivityCreated(savedInstanceState);
        xListView = (XListView) getView().findViewById(R.id.xlistview);
        xListView.setPullLoadEnable(true);
        xListView.setPullRefreshEnable(true);
        xListView.setXListViewListener(new IXListViewListener() {
            @Override
            public void onRefresh() {
                data2.clear();
                new MyThread().start();
                if (adapter != null) {
                    adapter.notifyDataSetChanged();
                }
                myHandler.postDelayed(new Runnable() {
                    @Override
                    public void run() {
                        // TODO Auto-generated method stub
                        xListView.setRefreshTime(dateFormat());
                        xListView.stopLoadMore();
                        xListView.stopRefresh();
                    }
                }, 500);
            }

            @Override
            public void onLoadMore() {
                // TODO Auto-generated method stub
                new MyThread_two().start();
                myHandler.postDelayed(new Runnable() {
                    @Override
                    public void run() {
                        xListView.stopRefresh();
                        xListView.stopLoadMore();
                        xListView.setRefreshTime("刚刚");
                    }
                }, 500);

            }
        });
        new MyThread().start();
    }

    class MyThread extends Thread {

        @Override
        public void run() {
            // TODO Auto-generated method stub
            super.run();
            String result = Httpget.httpgetClient(title);
            Gson gson = new Gson();
            Data data = gson.fromJson(result, Data.class);
            data2 = data.data;
            Message msg = new Message();
            msg.obj = data2;
            msg.what = 1;
            myHandler.sendMessage(msg);
        }

    }

    // 上拉时调用
    class MyThread_two extends Thread {
        @Override
        public void run() {
            // TODO Auto-generated method stub
            super.run();
            String result = Httpget.httpgetClient(title);
            Gson gson = new Gson();
            Data data = gson.fromJson(result, Data.class);
            ArrayList<DataBean> dat = (ArrayList<DataBean>) data.data;
            // 将请求新的数据添加到原来的集合
            for (DataBean dataBean : dat) {
                data2.add(dataBean);
            }
            Message msg = new Message();
            msg.obj = data2;
            msg.what = 2;
            myHandler.sendMessage(msg);
        }
    }

    // 格式化时间
    private String dateFormat() {
        long currentTimeMillis = System.currentTimeMillis();
        SimpleDateFormat dateFormat = new SimpleDateFormat(
                "yyyy-MM-dd  hh:mm:ss");
        String format = dateFormat.format(currentTimeMillis);
        return format;
    }
    public Handler myHandler = new Handler() {

        @Override
        public void handleMessage(Message msg) {
            // TODO Auto-generated method stub
            super.handleMessage(msg);
            switch (msg.what) {
            case 1:
                List<DataBean> bean1 = (List<DataBean>) msg.obj;
                adapter = new DataBeanAdapter(getActivity(), bean1);
                xListView.setAdapter(adapter);
                break;
            case 2:
                List<DataBean> bean2 = (List<DataBean>) msg.obj;
                adapter = new DataBeanAdapter(getActivity(), bean2);
//                //显示指定的item项
//                xListView.smoothScrollToPosition(xListView.getCount() - 21);
//                xListView.setSelection(xListView.getCount() - 21);
                //adapter.notifyDataSetChanged();
            }

        }
    };
0 0
原创粉丝点击