简陋月考题

来源:互联网 发布:淘宝上架宝贝没有品牌 编辑:程序博客网 时间:2024/05/17 08:14
public class MyAdapter extends BaseAdapter {    int a = 0;    int b = 1;    Context context;    ImageLoader loader;    List<Bean.ResultBean.ImageListBean> list = new ArrayList<>();    List<String> listTu = new ArrayList<>();    public MyAdapter(Context context) {        this.context = context;        ImageLoaderConfiguration configuration = ImageLoaderConfiguration.createDefault(context);        ImageLoader.getInstance().init(configuration);        loader = ImageLoader.getInstance();    }    public void addData(List<Bean.ResultBean.ImageListBean> list) {        this.list.addAll(list);        notifyDataSetChanged();    }    public void updateData(List<Bean.ResultBean.ImageListBean> list) {        this.list.clear();        addData(list);    }    @Override    public int getCount() {        return list.size();    }    @Override    public Object getItem(int position) {        return null;    }    @Override    public long getItemId(int position) {        return 0;    }    @Override    public int getItemViewType(int position) {        if (position == 0) {            return 0;        } else {            return 1;        }    }    @Override    public int getViewTypeCount() {        return 2;    }    @Override    public View getView(final int position, View convertView, ViewGroup parent) {        int type = getItemViewType(position);        ViewHolder0 holder0 = null;        ViewHolder1 holder1 = null;        if (convertView == null) {            switch (type) {                case 0:                    holder0 = new ViewHolder0();                    convertView = View.inflate(context,R.layout.item0,null);                    holder0.myBanner = (Banner) convertView.findViewById(R.id.myBanner);                    convertView.setTag(holder0);                    break;                case 1:                    holder1 = new ViewHolder1();                    convertView = View.inflate(context,R.layout.item1,null);                    holder1.myId = (TextView) convertView.findViewById(R.id.myId);                    convertView.setTag(holder1);                    break;                default:                    break;            }        } else {            switch (type) {                case 0:                    holder0 = (ViewHolder0) convertView.getTag();                    break;                case 1:                    holder1 = (ViewHolder1) convertView.getTag();                    break;                default:                    break;            }        }        switch (type) {            case 0:                holder0.myBanner.setImageLoader(new com.youth.banner.loader.ImageLoader() {                    @Override                    public void displayImage(Context context, Object path, ImageView imageView) {                        String imageUrl = list.get(position).getImageUrl();                        loader.displayImage(imageUrl,imageView);                    }                });                holder0.myBanner.setImages(list.subList(0, 4));                holder0.myBanner.start();                break;            case 1:                holder1.myId.setText(list.get(position).getId()+"");                break;            default:                break;        }        return convertView;    }    class ViewHolder0 {        Banner myBanner;    }    class ViewHolder1 {        TextView myId;    }}
public class Fragment1 extends Fragment {    List<Bean.ResultBean.ImageListBean> list = new ArrayList<>();    public Fragment1(List<Bean.ResultBean.ImageListBean> list) {        this.list = list;    }    MyAdapter adapter;    XListView lv;    @Nullable    @Override    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {        View v = View.inflate(getActivity(), R.layout.fragment1, null);        lv = (XListView) v.findViewById(R.id.lv);        adapter = new MyAdapter(getActivity());        lv.setAdapter(adapter);        lv.setPullLoadEnable(true);        lv.setPullRefreshEnable(true);        lv.setXListViewListener(new XListView.IXListViewListener() {            @Override            public void onRefresh() {                adapter.updateData(list);                lv.stopRefresh();            }            @Override            public void onLoadMore() {                adapter.addData(list);                lv.stopLoadMore();            }        });        adapter.addData(list);        return v;    }}


public class MainActivity extends AppCompatActivity {    TabLayout tab;    ViewPager vp;    MyPageFragAdapter myPageFragAdapter;    List<Fragment> fragList = new ArrayList<>();    List<Bean.ResultBean.ImageListBean> list;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        tab = (TabLayout) findViewById(R.id.myTab);        vp = (ViewPager) findViewById(R.id.vp);        getData();        myPageFragAdapter = new MyPageFragAdapter(getSupportFragmentManager());        tab.setupWithViewPager(vp);    }    class MyPageFragAdapter extends FragmentPagerAdapter {        public MyPageFragAdapter(FragmentManager fm) {            super(fm);        }        @Override        public Fragment getItem(int position) {            return fragList.get(position);        }        @Override        public int getCount() {            return fragList.size();        }        @Override        public CharSequence getPageTitle(int position) {            return list.get(position).getId()+"";        }    }    private void getData() {        String path = "http://japi.juhe.cn/comic/chapterContent?comicName=%E8%BE%9B%E5%B7%B4%E8%BE%BE%E7%9A%84%E5%86%92%E9%99%A9&id=237401&key=cb6f43f49fe8e215361aa7a95559625d";        new HttpUtil().getDataFromServer(MainActivity.this, new RequestBean(path), new HttpUtil.DataCallBack() {            @Override            public void prosseData(String json) {                Gson gson = new Gson();                Bean bean = gson.fromJson(json, Bean.class);                list = bean.getResult().getImageList();                for (int i = 0; i < 4; i++) {                    int id = list.get(i).getId();                    tab.addTab(tab.newTab().setText(id + ""));                }                fragList.add(new Fragment1(list));                fragList.add(new Fragment2("第二页"));                fragList.add(new Fragment2("第三页"));                fragList.add(new Fragment2("第四页"));                vp.setAdapter(myPageFragAdapter);            }        });    }}


 
原创粉丝点击