public class MainActivity extends AppCompatActivity { TabLayout tab; ViewPager vp; List<Bean.ResultBean.BookListBean> list; List<ImageView> arrImg = new ArrayList<>(); MyAdapter adapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ImageLoaderConfiguration configuration = ImageLoaderConfiguration.createDefault(this); ImageLoader.getInstance().init(configuration); tab = (TabLayout) findViewById(R.id.myTab); vp = (ViewPager) findViewById(R.id.vp); adapter = new MyAdapter(); getData(); tab.setupWithViewPager(vp); } class MyAdapter extends PagerAdapter { @Override public int getCount() { return arrImg.size(); } @Override public boolean isViewFromObject(View view, Object object) { return view == object; } @Override public Object instantiateItem(ViewGroup container, int position) { container.addView(arrImg.get(position)); return arrImg.get(position); } @Override public void destroyItem(ViewGroup container, int position, Object object) { // super.destroyItem(container, position, object); container.removeView((View) object); } @Override public CharSequence getPageTitle(int position) { return list.get(position).getName(); } } private void getData() { String path = "http://japi.juhe.cn/comic/book?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().getBookList(); ImageLoader loader = ImageLoader.getInstance(); for (int i = 0; i < 4; i++) { String name = list.get(i).getName(); tab.addTab(tab.newTab().setText(name)); } for (int i = 0; i < 4; i++) { String coverImg = list.get(i).getCoverImg(); ImageView img = new ImageView(MainActivity.this); loader.displayImage(coverImg, img); arrImg.add(img); } vp.setAdapter(adapter); } }); } }
TabL
最新推荐文章于 2021-07-28 11:04:49 发布