Android Banner 的简单使用步骤

Step 1: 依赖

//Banner
implementation 'com.youth.banner:banner:1.4.10'
implementation 'com.github.bumptech.glide:glide:4.10.0'
implementation 'com.squareup.picasso:picasso:2.71828'
implementation 'com.facebook.fresco:fresco:0.12.0'

Step 2 : 添加权限到你的 AndroidManifest.xml

<!-- if you want to load images from the internet -->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<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" />


Step 3: 在布局文件中添加Banner,可以设置自定义属性

<com.youth.banner.Banner
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/banner"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    tools:ignore="MissingConstraints" />

Step 4: 重写图片加载器

public class GlideImageLoader extends ImageLoader {

    @Override
    public void displayImage(Context context, Object path, ImageView imageView) {

        //Glide 加载图片简单用法
        Glide.with(context).load(path).into(imageView);

    }

}

Step 5: 在Activity 或 Fragment 中使用Banner

public class FinanceFragment extends com.lzw.wsbank.base.BaseFragment {

    Banner banner;
    List images = new ArrayList<>();
    List titles = new ArrayList<>();

    @Override
    public View initView() {
        View view = View.inflate(mContext, R.layout.fragment_finance, null);
        banner = (Banner) view.findViewById(R.id.banner);

        //添加图片资源
        images.add("http://img.lanrentuku.com/img/allimg/0906/8_220800_1.jpg");
        images.add("http://img.lanrentuku.com/img/allimg/1506/14332974643135.jpg");
        images.add("http://img.lanrentuku.com/img/allimg/1506/14343524956456.jpg");
        titles.add("图片——1");
        titles.add("图片——2");
        titles.add("图片——3");
        getBanner_2();
     
    }

    /**
     * 详细使用
     */
    private void getBanner_2() {
        //设置banner样式
        banner.setBannerStyle(BannerConfig.CIRCLE_INDICATOR_TITLE);
        //设置图片加载器
        banner.setImageLoader(new GlideImageLoader());
        //设置图片集合
        banner.setImages(images);
        //设置banner动画效果
        banner.setBannerAnimation(Transformer.DepthPage);
        //设置标题集合(当banner样式有显示title时)
        banner.setBannerTitles(titles);
        //设置自动轮播,默认为true
        banner.isAutoPlay(true);
        //设置轮播时间
        banner.setDelayTime(1500);
        //设置指示器位置(当banner模式中有指示器时)
        banner.setIndicatorGravity(BannerConfig.CENTER);
        //banner设置方法全部调用完毕时最后调用
        banner.start();
    }

}
发布了49 篇原创文章 · 获赞 6 · 访问量 1131

猜你喜欢

转载自blog.csdn.net/qq_36478274/article/details/103042165