WSP_fragment

package com.bwie.fragment;

import java.util.List;

import android.os.Bundle;
import android.os.Handler;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ListView;

import com.bwie.a.XListView;
import com.bwie.a.XListView.IXListViewListener;
import com.bwie.vo.Blog;
import com.bwie.vo.News;
import com.bwie.vo.Persons;
import com.bwie.vo.Persons2;
import com.bwie.yuekao.NewAdapter;
import com.bwie.yuekao.NewAdapter2;
import com.bwie.yuekao.R;
import com.lidroid.xutils.HttpUtils;
import com.lidroid.xutils.exception.HttpException;
import com.lidroid.xutils.http.ResponseInfo;
import com.lidroid.xutils.http.callback.RequestCallBack;
import com.lidroid.xutils.http.client.HttpRequest.HttpMethod;
import com.thoughtworks.xstream.XStream;

public class Myfragment extends Fragment implements IXListViewListener {
    public String url;
    public int i;
    private List<News> data;
    private XListView xlistView;
    int z = 6;
    int p = 6;
    private List<Blog> blog_list;
    private XStream xStream;
    private BaseAdapter adapter;
    private BaseAdapter adapter1;
    Handler handler = new Handler() {
        public void handleMessage(android.os.Message msg) {

        };
    };

    public Myfragment(String url, int i) {
        //
        this.url = url;
        this.i = i;
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        View view = inflater.inflate(R.layout.f, null);

        xlistView = (XListView) view.findViewById(R.id.listView);
        xlistView.setPullLoadEnable(true);// 设置让它上拉,FALSE为不让上拉,便不加载更多数据
        xlistView.setPullRefreshEnable(true);
        xlistView.setXListViewListener(this);// 监听
        getXml();
        return view;
    }

    // 从网络上请求
    public void getXml() {
        z = z - 1;
        // 利用httputils请求网络数据
        HttpUtils utils = new HttpUtils();
        utils.send(HttpMethod.POST, url + z, new RequestCallBack<String>() {

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

            }

            // 成功

            @Override
            public void onSuccess(ResponseInfo<String> arg0) {
                //
                String result = arg0.result;
                xStream = new XStream();
                if (i == 0 || i == 1) {

                    xStream.processAnnotations(Persons.class);

                    Persons p = (Persons) xStream.fromXML(result);
                    // 得到数据
                    data = p.getNewslist().getNews();

                    System.out.println("赛鹏" + data);
                    adapter = new NewAdapter(getActivity(), data);
                    // 设置适配器
                    xlistView.setAdapter(adapter);
                }
                if (i == 2 || i == 3) {

                    xStream.processAnnotations(Persons2.class);

                    Persons2 p2 = (Persons2) xStream.fromXML(result);
                    // 得到数据
                    blog_list = p2.getBlogs().getBlog();

                    System.out.println("赛鹏" + data);
                    adapter1 = new NewAdapter2(getActivity(), blog_list);
                    // 设置适配器
                    xlistView.setAdapter(adapter1);
                }
            }
        });
    }

    // 停止刷新
    public void onLoad() {
        xlistView.stopRefresh();
        xlistView.stopLoadMore();
        xlistView.setRefreshTime("刚刚");
    }

    // 刷新
    @Override
    public void onRefresh() {
        // 调用刷新的方法
        getXml();
        onLoad();

    }

    // 加载
    @Override
    public void onLoadMore() {
        p = p - 1;
        HttpUtils httpUtils = new HttpUtils();
        httpUtils.send(HttpMethod.POST, url + p, new RequestCallBack<String>() {

            @Override
            public void onFailure(HttpException arg0, String arg1) {
                // TODO Auto-generated method stub

            }

            @Override
            public void onSuccess(ResponseInfo<String> arg0) {
                // TODO Auto-generated method stub
                String result = arg0.result;
                XStream stream = new XStream();
                if (i == 0 || i == 1) {
                    xStream.processAnnotations(Persons.class);

                    Persons p = (Persons) xStream.fromXML(result);
                    // 得到数据
                    List<News> data1 = p.getNewslist().getNews();

                    data.addAll(data1);
                    // 刷新适配器
                    adapter.notifyDataSetChanged();
                }
                if (i == 2 || i == 3) {
                    stream.processAnnotations(Persons2.class);
                    Persons2 good = (Persons2) stream.fromXML(result);
                    List<Blog> blog = good.getBlogs().getBlog();
                    blog_list.addAll(blog);
                    adapter1.notifyDataSetChanged();
                }
            }
        });
        onLoad();

    }

}

posted on 2016-04-05 19:46  天空很大,我们很小  阅读(155)  评论(0编辑  收藏  举报