导包
compile 'com.nostra13.universalimageloader:universal-image-loader:1.9.1' 初始化 ViewPager viewPager; ViewPagerAdapter viewPagerAdapter; List<Map<String,Object>> data=new ArrayList<>(); protected ImageLoader imageLoader=ImageLoader.getInstance(); DisplayImageOptions options;赋值
data=getImageData(bean); imageLoader=ImageLoader.getInstance(); imageLoader.init(ImageLoaderConfiguration.createDefault(this)); options=new DisplayImageOptions.Builder() .showStubImage(R.drawable.bg_nothing) // 在ImageView加载过程中显示图片 .showImageForEmptyUri(R.drawable.bg_nothing) // image连接地址为空时 .showImageOnFail(R.drawable.bg_nothing) // image加载失败 .cacheInMemory(true) // 加载图片时会在内存中加载缓存 .cacheOnDisc(true) // 加载图片时会在磁盘中加载 .build(); viewPagerAdapter=new ViewPagerAdapter(data); viewPager.setAdapter(viewPagerAdapter); viewPagerAdapter.notifyDataSetChanged();获取展示图片数据
public List<Map<String,Object>>getImageData(PaperDetailFinishBean bean){ List<Map<String,Object>>mdata=new ArrayList<Map<String,Object>>(); // Map<String,Object> map=new HashMap<String,Object>(); // Map<String,Object> map1=new HashMap<String,Object>(); if(bean!=null){ for(int i=0;i<bean.getData().getItems().get(cNum).getTeacherPYForStudentItemVo().size();i++) { Map<String,Object> mapi=new HashMap<String,Object>(); mapi.put("url", bean.getData().getItems().get(cNum).getTeacherPYForStudentItemVo().get(i).getStudentPic()); mapi.put("view",new ImageView(this)); mdata.add(mapi); viewPager.setOffscreenPageLimit(bean.getData().getItems().get(cNum).getTeacherPYForStudentItemVo().size()); viewPager.setCurrentItem(bean.getData().getItems().get(cNum).getTeacherPYForStudentItemVo().size()); } } return mdata; } viewpager适配器 public class ViewPagerAdapter extends PagerAdapter{ List<Map<String,Object>> viewLists; public ViewPagerAdapter(List<Map<String,Object>> lists) { viewLists=lists; } @Override public int getCount() { return viewLists.size(); } @Override public boolean isViewFromObject(View view, Object object) { return view==object; } @Override public void destroyItem(View view,int position,Object object) { ImageView x=(ImageView)viewLists.get(position).get("view"); x.setScaleType(ImageView.ScaleType.FIT_CENTER); ((ViewPager)view).removeView(x); } public Object instantiateItem(View view,int position){ for(int i=0;i<viewLists.size();i++) { ImageView x=(ImageView)viewLists.get(i).get("view"); x.setScaleType(ImageView.ScaleType.FIT_CENTER); imageLoader.displayImage(viewLists.get(i).get("url").toString(),x,options); //看代码写在得位置 如无报错移除可以不用写 ((ViewPager)view).removeView(x); ((ViewPager)view).addView(x,0); } return viewLists.get(position).get("view"); } }