在PullToRefreshListView头部添加布局进行banner轮播

InfoFragment

public class InfoFragment extends BaseFragment {
    private PullToRefreshListView contents;
    private InfoAdapter adapter;
    private ListView lv;
    private BGABanner pager;
    private String[] picUrl = {
            "https://ss0.bdstatic.com/70cFvHSh_Q1YnxGkpoWK1HF6hhy/it/u=2938240330,1839732672&fm=27&gp=0.jpg",
            "http://img3.imgtn.bdimg.com/it/u=4276491126,3511500973&fm=27&gp=0.jpg",
            "http://img5.imgtn.bdimg.com/it/u=210464971,3093822652&fm=27&gp=0.jpg"
    };
    @Override
    protected void initView(View view) {
        page=1;
        contents = view.findViewById(R.id.contents);
        //添加头部布局  
        View headview = LayoutInflater.from(getActivity()).inflate(R.layout.head_temple, contents, false);
        AbsListView.LayoutParams layoutParams = new AbsListView.LayoutParams(AbsListView.LayoutParams.MATCH_PARENT,
                AbsListView.LayoutParams.WRAP_CONTENT);
        headview.setLayoutParams(layoutParams);
        pager = headview.findViewById(R.id.pager);
        //banner轮播
        final List<String> imgList = new ArrayList<>();
        for (int a = 0; a < picUrl.length; a++) {
            imgList.add(picUrl[a]);
        }
        pager.setData(imgList,null);

        pager.setAdapter(new BGABanner.Adapter() {
            @Override
            public void fillBannerItem(BGABanner banner, View itemView, @Nullable Object model, int position) {
                Picasso.with(getActivity()).load(imgList.get(position)).fit().into((ImageView) itemView);
            }
        });
        lv = contents.getRefreshableView();
        lv.addHeaderView(headview);
        adapter = new InfoAdapter(getActivity());
        contents.setAdapter(adapter);
        contents.setMode(PullToRefreshBase.Mode.BOTH);
        contents.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ListView>() {
            @Override
            public void onPullDownToRefresh(PullToRefreshBase<ListView> refreshView) {
                page=1;
                initData();
            }
            @Override
            public void onPullUpToRefresh(PullToRefreshBase<ListView> refreshView) {
                initData();
            }
        });
    }

    private int page;
    private String aipurl = "http://www.xieast.com/api/news/news.php?page=";

    @Override
    protected void initData() {
        NewsUtil.getInstans().getRequest3(aipurl + page, NewsResponse.class, new NewsUtil.NetworkCallback<NewsResponse>() {
            @Override
            public void success(NewsResponse o) {
                if (page==1) {
                    adapter.setmDatas(o.getData());
                }
                else {
                    adapter.addDatas(o.getData());
                }
                page++;
                contents.onRefreshComplete();
            }

            @Override
            public void fiean(String msg) {

            }
        });
    }
    @Override
    protected int getLayoutResId() {
        return R.layout.fragment_info;
    }
}

猜你喜欢

转载自blog.csdn.net/weixin_43299230/article/details/85108049