效果图:
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210304151636964.gif)
加入依赖:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
页面布局:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
tools:context=".Banner.BannnerMainActivity">
<com.youth.banner.Banner
android:layout_width="match_parent"
android:layout_height="150dp"
android:id="@+id/banner">
</com.youth.banner.Banner>
</LinearLayout>
逻辑功能实现:
package com.example.myapplication8.Banner;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Context;
import android.os.Bundle;
import android.widget.ImageView;
import android.widget.Toast;
import com.bumptech.glide.Glide;
import com.example.myapplication8.R;
import com.youth.banner.Banner;
import com.youth.banner.BannerConfig;
import com.youth.banner.Transformer;
import com.youth.banner.listener.OnBannerListener;
import com.youth.banner.loader.ImageLoader;
import java.util.ArrayList;
public class BannnerMainActivity extends AppCompatActivity implements OnBannerListener {
private Banner mBanner;
private ArrayList list_path;
private ArrayList list_title;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_bannner_main);
intiView();
}
private void intiView() {
mBanner = 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("一切顺利");
mBanner.setBannerStyle(BannerConfig.CIRCLE_INDICATOR_TITLE_INSIDE);
mBanner.setImageLoader(new MyLoader());
mBanner.setImages(list_path);
mBanner.setBannerAnimation(Transformer.Default);
mBanner.setBannerTitles(list_title);
mBanner.setDelayTime(3000);
mBanner.isAutoPlay(true);
mBanner.setIndicatorGravity(BannerConfig.CENTER)
.setOnBannerListener(this)
.start();
}
@Override
public void OnBannerClick(int position) {
Toast.makeText(this, "你点击了第:"+(position+1)+"张轮播", Toast.LENGTH_SHORT).show();
}
private class MyLoader extends ImageLoader {
@Override
public void displayImage(Context context, Object path, ImageView imageView) {
Glide.with(context.getApplicationContext())
.load((String) path)
.into(imageView);
}
}
}
package com.example.myapplication8.Banner;
import android.content.Context;
import android.os.Bundle;
import android.widget.ImageView;
import android.widget.Toast;
import androidx.appcompat.app.AppCompatActivity;
import com.bumptech.glide.Glide;
import com.example.myapplication8.R;
import com.youth.banner.Banner;
import com.youth.banner.BannerConfig;
import com.youth.banner.Transformer;
import com.youth.banner.listener.OnBannerListener;
import com.youth.banner.loader.ImageLoader;
import java.util.ArrayList;
public class BannerMain2Activity extends AppCompatActivity implements OnBannerListener {
private Banner mBanner;
private ArrayList imgList;
private ArrayList titleList;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_bannner_main);
initView();
}
private void initView() {
imgList = new ArrayList<>();
imgList.add(R.mipmap.b1);
imgList.add(R.mipmap.b2);
imgList.add(R.mipmap.b3);
imgList.add(R.mipmap.b4);
titleList = new ArrayList<>();
titleList.add("我是banner1");
titleList.add("我是banner2");
titleList.add("我是banner3");
titleList.add("我是banner4");
mBanner = (Banner) findViewById(R.id.banner);
mBanner.setBannerStyle(BannerConfig.CIRCLE_INDICATOR_TITLE_INSIDE);
mBanner.setImageLoader(new MyImageLoader());
mBanner.setImages(imgList);
mBanner.setBannerAnimation(Transformer.Default);
mBanner.setBannerTitles(titleList);
mBanner.setDelayTime(3000);
mBanner.isAutoPlay(true);
mBanner.setIndicatorGravity(BannerConfig.CENTER)
.setOnBannerListener(this)
.start();
}
@Override
public void OnBannerClick(int position) {
Toast.makeText(this,"你点击了第"+(position+1)+"张轮播图",Toast.LENGTH_LONG).show();
}
public class MyImageLoader extends ImageLoader {
@Override
public void displayImage(Context context, Object path, ImageView imageView) {
Glide.with(context)
.load(path)
.into(imageView);
}
}
}