//导一个jar包 photoview 1.3版本
//子条目监听中
xLV.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { ArrayList<String> arrayList = new ArrayList<String>(); arrayList.add(results.get(position-1).getThumbnail_pic_s()); arrayList.add(results.get(position-1).getThumbnail_pic_s02()); arrayList.add(results.get(position-1).getThumbnail_pic_s03()); Intent intent = new Intent(getActivity(),SecondActivity.class); intent.putStringArrayListExtra("image",arrayList); startActivity(intent); } });
//Second布局文件
<cn.bluemobi.dylan.photoview.HackyViewPager android:id="@+id/sec_image" android:layout_width="300dp" android:layout_height="200dp"></cn.bluemobi.dylan.photoview.HackyViewPager>
//SecondActivity
public class SecondActivity extends AppCompatActivity { private HackyViewPager pager; private ArrayList<View> viewArrayList = new ArrayList<>(); private ArrayList<String> list; @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); //显示当前页面布局 setContentView(R.layout.second); //获取资源ID pager = (HackyViewPager) findViewById(R.id.sec_image); Intent intent = getIntent(); list = intent.getStringArrayListExtra("image"); //自定义配置 DisplayImageOptions options = new DisplayImageOptions.Builder() .cacheInMemory(true)//让图片进行内存缓存 .cacheOnDisk(true)//让图片进行sdcard缓存 // .showImageForEmptyUri(R.mipmap.ic_empty)//图片地址有误 // .showImageOnFail(R.mipmap.ic_error)//当图片加载出现错误的时候显示的图片 // .showImageOnLoading(R.mipmap.loading)//图片正在加载的时候显示的图片 .build(); //ImageLoader.getInstance().loadImage(path,options,new Ima);//加载图片 //参数1:加载的图片地址 //参数2:将图片设置到那个图片控件上面 //参数3:加载图片配置选项,意思是指明对这张图片的是否进行缓存(内存、sdcard) PhotoView photoView1 = new PhotoView(SecondActivity.this); ImageLoader.getInstance().displayImage(list.get(0), photoView1,options); PhotoView photoView2 = new PhotoView(SecondActivity.this); ImageLoader.getInstance().displayImage(list.get(1), photoView2,options); PhotoView photoView3 = new PhotoView(SecondActivity.this); ImageLoader.getInstance().displayImage(list.get(2), photoView3,options); viewArrayList.add(photoView1); viewArrayList.add(photoView2); viewArrayList.add(photoView3); MySelfPagerAdapter mySelfPagerAdapter = new MySelfPagerAdapter(); pager.setAdapter(mySelfPagerAdapter); } class MySelfPagerAdapter extends PagerAdapter{ @Override public int getCount() { return viewArrayList.size(); } @Override public boolean isViewFromObject(View view, Object object) { return view == object; } @Override public Object instantiateItem(ViewGroup container, int position) { container.addView(viewArrayList.get(position)); return viewArrayList.get(position); } @Override public void destroyItem(ViewGroup container, int position, Object object) { container.removeView(viewArrayList.get(position)); } } }