t extends BaseFragment {
private Banner banner;
private PullToRefreshListView p_listview;
private List<String> pic_list = new ArrayList<String>();
private String url = "http://api.expoon.com/AppNews/getNewsList/type/1/p/";
private int page=1;
private List<News> list = new ArrayList<News>();
private MyAdapter adapter;
@Override
protected int initLayout() {
return R.layout.shou_fragment;
}
@Override
protected void initView() {
banner = fvbi(R.id.banner);
p_listview = fvbi(R.id.pull_listview);
p_listview.setMode(PullToRefreshBase.Mode.BOTH);
p_listview.setScrollingWhileRefreshingEnabled(true);
}
@Override
protected void initData() {
setBanner();
adapter = new MyAdapter(list,getActivity());
p_listview.setAdapter(adapter);
if (HttpUtil.isNetConnected(getActivity())){
getData(page);
}else{
Toast.makeText(getActivity(), "没网喽.", Toast.LENGTH_SHORT).show();
}
}
private void getData(int p) {
String myUrl = url+ p;
HttpUtil.MyTask(myUrl, new HttpUtil.MyCallBack() {
@Override
public void getData(String str) {
jsonParse(str);
}
});
}
//解析
private void jsonParse(String str) {
Gson gson = new Gson();
NewsBean newsBean = gson.fromJson(str, NewsBean.class);
list.addAll(newsBean.getData());
adapter.notifyDataSetChanged();
p_listview.onRefreshComplete();
}
//轮播图
private void setBanner() {
pic_list.add("https://ws1.sinaimg.cn/large/0065oQSqly1g04lsmmadlj31221vowz7.jpg");
pic_list.add("https://ws1.sinaimg.cn/large/0065oQSqgy1fze94uew3jj30qo10cdka.jpg");
pic_list.add("https://ws1.sinaimg.cn/large/0065oQSqly1fytdr77urlj30sg10najf.jpg");
pic_list.add("https://ws1.sinaimg.cn/large/0065oQSqly1fymj13tnjmj30r60zf79k.jpg");
banner.isAutoPlay(true);
banner.setDelayTime(2000);
banner.setImages(pic_list);
banner.setImageLoader(new ImageLoader() {
@Override
public void displayImage(Context context, Object path, ImageView imageView) {
Glide.with(context).load(path).into(imageView);
}
}).start();
}
//上下拉事件
@Override
protected void initListenner() {
p_listview.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ListView>() {
@Override
public void onPullDownToRefresh(PullToRefreshBase<ListView> refreshView) {
list.clear();
getData(page);
}
@Override
public void onPullUpToRefresh(PullToRefreshBase<ListView> refreshView) {
page++;
getData(page);
}
});
}
}