xlistview

private XListView xlv;
    String path = "";
    String refresh = "http://ic.snssdk.com/2/article/v25/stream/?count=20&min_behot_time=1473057356&bd_latitude=4.9E-324&bd_longitude=4.9E-324&bd_loc_time=1473059010&loc_mode=5&loc_time=1473001407&latitude=39.91488833333334&longitude=116.40387666666666&city=北京&lac=40965&cid=1388769&iid=5428157173&device_id=27747569727&ac=wifi&channel=baidu&aid=13&app_name=news_article&version_code=460&device_platform=android&device_type=GT-P5210&os_api=17&os_version=4.2.2&uuid=133524576599053&openudid=9030044003655157";
    private List<Data> list=new ArrayList<Data>();
    private BeanaAdapter adapter;
    
    @SuppressLint("HandlerLeak")
    Handler handler=new Handler(){
        public void handleMessage(android.os.Message msg) {
            String json=(String) msg.obj;
            Gson gson=new Gson();
            int i=msg.arg1;
            Bean bean = gson.fromJson(json, Bean.class);
            //list=bean.getData();
            //刷新
            if(i==0){
                list.clear();
                list.addAll(bean.getData());
                adapter.notifyDataSetChanged();
                stopXlistView();
                //缓存
            }else if(i==1){
                list.addAll(bean.getData());
                adapter.notifyDataSetChanged();
                stopXlistView();
            }
        };
    };
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        xlv = (XListView) findViewById(R.id.xlv);
        // 设置激活上拉加载更多
        xlv.setPullLoadEnable(true);
        xlv.setXListViewListener(new IXListViewListener() {

            @Override
            public void onRefresh() {
                getData(0);
            }

            @Override
            public void onLoadMore() {
                getData(1);
            }
        });
        getData(1);
        adapter = new BeanaAdapter(list, MainActivity.this);
        xlv.setAdapter(adapter);
        xlv.setOnItemClickListener(listener);
    }
    OnItemClickListener listener=new OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
                long arg3) {
            Intent intent=new Intent(MainActivity.this, WebViewActivity.class);
            intent.putExtra("url", list.get(arg2-1).getShare_url());
            startActivity(intent);
            
        }
    };

    private void getData(final int i) {
        HttpUtils http=new HttpUtils();
        // httputils默认60刷新,否则用缓存
        http.configCurrentHttpCacheExpiry(0);
        path=refresh;
        http.send(HttpMethod.GET, path, new RequestCallBack<String>(){

            @Override
            public void onFailure(HttpException arg0, String arg1) {
                
            }
            @Override
            public void onSuccess(ResponseInfo<String> arg0) {
                String result = arg0.result;
                Message msg=Message.obtain();
                msg.obj=result;
                msg.arg1=i;
                handler.sendMessage(msg);
            }
        });
    }
    
    @SuppressLint("SimpleDateFormat")
    public void stopXlistView() {
        SimpleDateFormat formatter = new SimpleDateFormat(" HH:mm:ss");
        Date curDate = new Date(System.currentTimeMillis());// 获取当前时间
        String str2 = formatter.format(curDate);
        // 设置刷新时间
        xlv.setRefreshTime(str2);
        // 停止加载更多
        xlv.stopLoadMore();
        // 停止刷新
        xlv.stopRefresh();
    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值