300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > Banner图片轮播器实现ViewPager图片切换效果及下方小圆点

Banner图片轮播器实现ViewPager图片切换效果及下方小圆点

时间:2024-02-28 11:44:14

相关推荐

Banner图片轮播器实现ViewPager图片切换效果及下方小圆点

Banner图片轮播器实现ViewPager图片切换效果及下方小圆点

在build.gradle中加载依赖

//bannerimplementation 'com.youth.banner:banner:1.4.10'

在Manifest.xml中添加权限

<!-- if you want to load images from the internet --><uses-permission android:name="android.permission.INTERNET" /> <!-- if you want to load images from a file OR from the internet --><uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

xml实现

直接在需要的位置插入banner就可以了高度、宽度自己根据情况定义

<com.youth.banner.Bannerandroid:id="@+id/banner"android:layout_width="match_parent"android:layout_height="250dp"android:layout_alignParentBottom="true"android:layout_marginBottom="5dp" />

java代码实现

新建一个类,重写图片加载器

public class GlideImageLoader extends ImageLoader {@Overridepublic void displayImage(Context context, Object path, ImageView imageView) {//以下根据自己需要任选一种//Glide 加载图片简单用法Glide.with(context).load(path).into(imageView);//Picasso 加载图片简单用法Picasso.with(context).load(path).into(imageView);//用fresco加载图片简单用法,记得要写下面的createImageView方法Uri uri = Uri.parse((String) path);imageView.setImageURI(uri);}//提供createImageView 方法,如果不用可以不重写这个方法,主要是方便自定义ImageView的创建@Overridepublic ImageView createImageView(Context context) {//使用fresco,需要创建它提供的ImageView,当然你也可以用自己自定义的具有图片加载功能的ImageViewSimpleDraweeView simpleDraweeView=new SimpleDraweeView(context);return simpleDraweeView;}}

在layout对应的Activity/Fragment中配置Banner

--------------------------简单使用-------------------------------@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);Banner banner = (Banner) findViewById(R.id.banner);//设置图片加载器banner.setImageLoader(new GlideImageLoader());//设置图片集合banner.setImages(images);//banner设置方法全部调用完毕时最后调用banner.start();}--------------------------详细使用-------------------------------@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);Banner banner = (Banner) findViewById(R.id.banner);//设置banner样式banner.setBannerStyle(BannerConfig.CIRCLE_INDICATOR_TITLE);//设置图片加载器banner.setImageLoader(new GlideImageLoader());//设置图片集合banner.setImages(images);//设置banner动画效果banner.setBannerAnimation(Transformer.DepthPage);//设置标题集合(当banner样式有显示title时)banner.setBannerTitles(titles);//设置自动轮播,默认为truebanner.isAutoPlay(true);//设置轮播时间banner.setDelayTime(1500);//设置指示器位置(当banner模式中有指示器时)banner.setIndicatorGravity(BannerConfig.CENTER);//banner设置方法全部调用完毕时最后调用banner.start();}-----------------当然如果你想偷下懒也可以这么用--------------------@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);Banner banner = (Banner) findViewById(R.id.banner);banner.setImages(images).setImageLoader(new GlideImageLoader()).start();}

参考:/youth514/banner/tree/release-1.4.10

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。