Banner轮播图+ImageLoader的使用

1.写权限

com.github.bumptech.glide:glide:4.8.0
com.youth.banner:banner:1.4.9

2.写权限

<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>

3.添加布局

<com.youth.banner.Banner
android:layout_width="match_parent"
android:layout_height="200dp"
android:id="@+id/banner"></com.youth.banner.Banner>

4.在Activity中编写代码

public class MainActivity extends AppCompatActivity implements OnBannerListener {

private Banner banner;
private ArrayList<String> list_path;
private ArrayList<String> list_title;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    //初始化控件
    initView();
}

private void initView() {
    banner = findViewById(R.id.banner);
    //放图片地址的集合
    list_path = new ArrayList<>();
    //放标题的集合
    list_title = new ArrayList<>();
    list_path.add("http://ww4.sinaimg.cn/large/006uZZy8jw1faic21363tj30ci08ct96.jpg");
    list_path.add("http://ww4.sinaimg.cn/large/006uZZy8jw1faic259ohaj30ci08c74r.jpg");
    list_path.add("http://ww4.sinaimg.cn/large/006uZZy8jw1faic2b16zuj30ci08cwf4.jpg");
    list_path.add("http://ww4.sinaimg.cn/large/006uZZy8jw1faic2e7vsaj30ci08cglz.jpg");
    list_title.add("好好学习");
    list_title.add("天天向上");
    list_title.add("热爱劳动");
    list_title.add("不搞对象");
    //设置内容样式  ,共有六种可以逐一体验使用
    banner.setBannerStyle(BannerConfig.CIRCLE_INDICATOR_TITLE_INSIDE);
    //设置图片加载器
    banner.setImageLoader(new MyLoader());
    //设置图片网址或地址的集合
    banner.setImages(list_path);
    //设置轮播的动画效果,内含多种特效,点入方法内查找后内逐一体验
    banner.setBannerAnimation(Transformer.Default);
    //设置轮播图的的标题集合
    banner.setBannerTitles(list_title);
    //设置轮播间隔时间
    banner.setDelayTime(3000);
    //设置是否为自动轮播,默认是"是
    banner.isAutoPlay(true);
    //设置指示器的位置, 圆圈的  左  中  右
    banner.setIndicatorGravity(BannerConfig.LEFT)
            //以上内容都可写成链式布局,这是轮播图的监听.比较重要,方法在下面
            .setOnBannerListener(this)
            //必须最后调用的方法,启用轮播图
            .start();



}
//轮播图的监听方法
@Override
public void OnBannerClick(int position) {
    Log.i("tag","你点了"+position+"张轮播图");
}

//自定义的图片加载器
private class MyLoader extends ImageLoader implements ImageLoaderInterface {


    public void displayImage(Context context, Object path, View imageView) {
        Glide.with(context).load((String)path).into((ImageView) imageView);
    }

    @Override
    public View createImageView(Context context) {
        return null;
    }
}

}

5.写混淆(本人不会混淆,可以点击网址查看混淆)
https://blog.csdn.net/qq_36621990/article/details/76020236

猜你喜欢

转载自blog.csdn.net/weixin_43860442/article/details/85067472