XListView

public class Frag_01 extends Fragment implements XListView.IXListViewListener{

private XListView xlview;
int page = 1;
//创建一个新的集合
ArrayList<Step> list = null;

@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {

    View view = inflater.inflate(R.layout.frag_01,container,false);

    xlview = view.findViewById(R.id.xlview);

//判断网络状态
boolean netWork = NetWorkUtils.isNetWork(getActivity());
if (netWork){
Toast.makeText(getActivity(), “网络状态很好哟”, Toast.LENGTH_SHORT).show();

        xlview.setPullLoadEnable(true);
        xlview.setPullRefreshEnable(true);
        xlview.setXListViewListener(this);
        //重新加载
        onLoad();

    }
    else {
        Toast.makeText(getActivity(), "网络状态很糟糕哦", Toast.LENGTH_SHORT).show();
    }

    return view;
}


@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
    super.onActivityCreated(savedInstanceState);
    new MyAsyncTask().execute();

}

@Override
public void onRefresh() {
    new Handler().postDelayed(new Runnable() {
        @Override
        public void run() {
            page=1;
            onLoad();
            getDtae();

        }
    },2000);

}

@Override
public void onLoadMore() {
    new Handler().postDelayed(new Runnable() {
        @Override
        public void run() {
            page++;
            onLoad();
            getDtae();

        }
    },2000);

}


private void onLoad(){

    new MyAsyncTask().execute();
}

private void getDtae(){
    xlview.stopRefresh();
    xlview.stopLoadMore();
    SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
    Date date = new Date(System.currentTimeMillis());

    //获取当前时间
    String format = dateFormat.format(date);
    xlview.setRefreshTime(format);
}

class MyAsyncTask extends AsyncTask<String,Void,String>{

    @Override
    protected String doInBackground(String... strings) {
        String path ="http://www.xieast.com/api/news/news.php?page="+page+"";
        try {
            URL url = new URL(path);
            HttpURLConnection connection = (HttpURLConnection) url.openConnection();
            connection.setRequestMethod("GET");
            connection.setReadTimeout(5000);
            connection.setConnectTimeout(5000);
            if (connection.getResponseCode()==200){
                InputStream stream = connection.getInputStream();
                BufferedReader reader = new BufferedReader(new InputStreamReader(stream));

                StringBuilder builder = new StringBuilder();
                String str = "";
                while ((str=reader.readLine())!=null){
                    builder.append(str);
                }
               return  builder.toString();
            }

        } catch (Exception e) {
            e.printStackTrace();
        }

        return null;
    }

    @Override
    protected void onPostExecute(String s) {
        super.onPostExecute(s);

        Gson gson = new Gson();
        JsonBean jsonBean = gson.fromJson(s, JsonBean.class);
        ArrayList<Step> data = jsonBean.getData();

        if (page==1){
            list=new ArrayList<>();
        }

        list.addAll(data);
        Myadapter myadapter = new Myadapter(getActivity(), list);
        xlview.setAdapter(myadapter);
        xlview.setSelection(list.size()-29);

    }
}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值