1:布局
<com.stx.xhb.xbanner.XBanner android:id="@+id/banner" android:layout_width="match_parent" android:layout_height="200.0dip" app:AutoPlayTime="3000" app:pointNormal="@drawable/shape_pointer_normal" app:pointSelect="@drawable/shape_pointer_selected" app:pointsContainerBackground="#44AAAAAA" app:pointsPosition="CENTER" app:tipTextColor="#FFFFFFFF" app:tipTextSize="16.0sp" />
2:Fragment1逻辑代码
private List<PullBean.DataBean> list=new ArrayList<>(); private String path="http://www.wanandroid.com/tools/mockapi/6523/article_channel_list"; private String path1="https://www.apiopen.top/satinGodApi?type=1&page=1"; private int page=1; private PullToRefreshListView pullToRefreshListView; private XBanner xBanner; private View view; private List<String> images=new ArrayList<>(); MyBase adapter; private Handler handler=new Handler(); /*private PullDao dao;*/ public static Fragment1 getInstance(String title){ //创建fragment Fragment1 fragment1=new Fragment1(); //创建bundle Bundle bundle=new Bundle(); bundle.putString("title",title); fragment1.setArguments(bundle); return fragment1; } @Nullable @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, Bundle savedInstanceState) { /*Bundle arguments = getArguments(); String title = arguments.getString("title"); TextView text=new TextView(getActivity()); text.setText(title);*/ //加载子布局 View view=inflater.inflate(R.layout.fragment1,container,false); //获取资源啊id xBanner=view.findViewById(R.id.xbanner); pullToRefreshListView=view.findViewById(R.id.pull_to_refresh); initView(); return view; } private void initView() { /*dao=new PullDao(getActivity());*/ Bundle arguments = getArguments(); if(arguments.get("title").equals("北京")){ //轮播 initBanner(); //上拉加载,下拉刷新 initPull(); getdata(); } } private void getdata() { String url=path1+page; HttpUtils.getdata(url, getActivity(), new InterfaceUtils() { @Override public void getJson(String json) { Gson gson=new Gson(); PullBean pullBean = gson.fromJson(json, PullBean.class); List<PullBean.DataBean> data = pullBean.getData(); if(page==1){ list.clear(); } //添加数据 list.addAll(data); /*for(int i=0;list.size()>0;i++){ String username = list.get(i).getUsername(); String top_commentsName = list.get(i).getTop_commentsName(); dao.add(username,top_commentsName ); }*/ //刷新适配器 adapter.notifyDataSetChanged(); } }); } private void initPull() { pullToRefreshListView.setMode(PullToRefreshBase.Mode.BOTH); //设置模式 final ILoadingLayout startLayout=pullToRefreshListView.getLoadingLayoutProxy(true,false); startLayout.setPullLabel("下拉刷新"); startLayout.setRefreshingLabel("正在刷新"); startLayout.setReleaseLabel("放开刷新"); final ILoadingLayout endLayout=pullToRefreshListView.getLoadingLayoutProxy(false,true); endLayout.setPullLabel("上拉加载"); endLayout.setRefreshingLabel("正在加载"); endLayout.setReleaseLabel("放开加载"); pullToRefreshListView.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ListView>() { @Override public void onPullDownToRefresh(final PullToRefreshBase<ListView> pullToRefreshBase) { page=1; getdata(); handler.postDelayed(new Runnable() { @Override public void run() { pullToRefreshBase.onRefreshComplete(); } },2000); } @Override public void onPullUpToRefresh(final PullToRefreshBase<ListView> pullToRefreshBase) { page+=1; getdata(); handler.postDelayed(new Runnable() { @Override public void run() { pullToRefreshBase.onRefreshComplete(); } },2000); } }); //创建适配器 adapter=new MyBase(getActivity(),list); pullToRefreshListView.setAdapter(adapter); } private void initBanner() { HttpUtils.getdata("http://www.wanandroid.com/tools/mockapi/6523/article_channel_list", getActivity(), new InterfaceUtils() { @Override public void getJson(String json) { //解析 Gson gson=new Gson(); LunboBean lunboBean = gson.fromJson(json, LunboBean.class); List<LunboBean.DataBean.FocusListBean> focus_list = lunboBean.getData().getFocus_list(); for(int i=0;i<focus_list.size();i++){ images.add(focus_list.get(i).getImage_url()); } xBanner.setData(images,null); xBanner.setPageTransformer(Transformer.Default); xBanner.setPageChangeDuration(1000); xBanner.setmAdapter(new XBanner.XBannerAdapter() { @Override public void loadBanner(XBanner banner, View view, int position) { Glide.with(getActivity()).load(images.get(position)).into((ImageView) view); } }); } }); }