介绍
本篇文章为大家展示了怎么在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中实现一个轮播图点击图片放大效果