怎么在Android中实现一个轮播图点击图片放大效果

  介绍

本篇文章为大家展示了怎么在Android中实现一个轮播图点击图片放大效果,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

Android是什么

Android是一种基于Linux内核的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由美国谷歌公司和开放手机联盟领导及开发。

<强>项目中添加相关的依赖

implementation  & # 39; com.youth.banner:横幅:1.4.9& # 39;   implementation  & # 39; com.github.bumptech.glide:滑翔:4.5.0& # 39;   implementation  & # 39; com.commit451: PhotoView: 4 # 39;

<强> 3。主界面实现轮播图的效果

public  class  MainActivity  extends  AppCompatActivity  implements  OnBannerListener  {      private  Banner 旗帜;   private  ArrayList< String>, list_path;      @Override   protected  void  onCreate (Bundle  savedInstanceState), {   super.onCreate (savedInstanceState);   setContentView (R.layout.activity_main);      initView ();   initData ();   initListener ();   }      private  void  initView (), {   时间=banner  findViewById (R.id.banner);   }      private  void  initData (), {   setBanner();//设置轮播图   }      private  void  initListener (), {      }/* *   *,设置轮播图   */private  void  setBanner (), {//放图片地址的集合   时间=list_path  new  ArrayList<祝辞();//设置图片数据   list_path.add (“https://sami - 1256315447. picgz.myqcloud.com/article/201908/2a919def19fc47e3aa0d75d8c227ab1b.jpg");   list_path.add (“https://sami - 1256315447. picgz.myqcloud.com/article/201908/d027d1efc0564c44bb979ba0bd21f560.jpg");   list_path.add (“https://sami - 1256315447. picgz.myqcloud.com/article/201908/bbb930d66e5a48baa8d3c143544d7631.jpg");   list_path.add (“https://sami - 1256315447. picgz.myqcloud.com/article/201908/fb1721b8c9be4da9949fcdd26fc902a2.jpg");   list_path.add (“https://sami - 1256315447. picgz.myqcloud.com/article/201908/08b58dde9b284638b44e2d03c4cb9acf.jpg");   list_path.add (“https://sami - 1256315447. picgz.myqcloud.com/article/201908/d3caeb6129ee43df87f5c1e1058d96fc.jpg");   list_path.add (“https://sami - 1256315447. picgz.myqcloud.com/article/201908/9fd01c4add07473db31ba850f20a7232.jpg");   list_path.add (“http://a.hiphotos.baidu.com/image/pic/item/00e93901213fb80e3b0a611d3fd12f2eb8389424.jpg");//设置内置样式,共有六种可以点入方法内逐一体验使用。   banner.setBannerStyle (BannerConfig.NUM_INDICATOR);//设置图片加载器,图片加载器在下方   banner.setImageLoader (new  ImgLoader ());//设置图片网址或地址的集合   banner.setImages (list_path);//设置轮播的动画效果,内含多种特效,可点入方法内查找后内逐一体验   banner.setBannerAnimation (Transformer.Default);//设置轮播间隔时间   banner.setDelayTime (3000);//设置是否为自动轮播,默认是“是”   banner.isAutoPlay(真正的);//设置指示器的位置,小点的点,左中右。   banner.setIndicatorGravity (BannerConfig.CENTER)//以上内容都可写成链式布的局,这是轮播图的监听。比较重要。方法在下面。   .setOnBannerListener(这)//必须最后调用的方法,启动轮播图。   .start ();   }//轮播图的监听方法   @Override   public  void  OnBannerClick (int 位置),{   Intent  Intent =, new 意图(,,BigImgActivity.class);   intent.putStringArrayListExtra (“imgData", list_path);   intent.putExtra (“clickPosition",位置);   startActivity(意图);   }//自定义的图片加载器   private  class  ImgLoader  extends  ImageLoader  {   @Override   public  void  displayImage (Context 上下文,Object 路径,ImageView  imageView), {   Glide.with(上下文).load((字符串),路径).into (imageView);   }   }   }

<>强4。点击轮播图进入图片放大展示页面

public  class  BigImgActivity  extends  AppCompatActivity  {   private  ViewPagerFixed : viewpage;   private  TextView  tvNum;      @Override   protected  void  onCreate (Bundle  savedInstanceState), {   super.onCreate (savedInstanceState);   setContentView (R.layout.activity_big_img);   initView ();   }      private  void  initView (), {   时间=viewPager  findViewById (R.id.viewpager);   时间=tvNum  findViewById (R.id.tv_num);//接收图片数据及位置   final  ArrayList< String>, imgData =, getIntent () .getStringArrayListExtra (“imgData");   int  clickPosition =, getIntent () .getIntExtra (“clickPosition",, 0);//添加适配器   PhotoPagerAdapter  viewPagerAdapter =, new  PhotoPagerAdapter (getSupportFragmentManager (),, imgData);   viewPager.setAdapter (viewPagerAdapter);   viewPager.setCurrentItem (clickPosition);//设置选中图片位置      viewPager.addOnPageChangeListener (new  ViewPager.OnPageChangeListener (), {   @Override   public  void  onPageScrolled (int 位置,,float  positionOffset,, int  positionOffsetPixels), {   tvNum.setText (String.valueOf(时间+ position  1), +,“/? +, imgData.size ());   }      @Override   public  void  onPageSelected (int 位置),{   }      @Override   public  void  onPageScrollStateChanged (int 状态),{      }   });   }   }

怎么在Android中实现一个轮播图点击图片放大效果