简单的轮播图实现
Banner轮播图
前言
一、使用步骤
1.引入库
代码如下(示例):
implementation 'com.youth.banner:banner:1.4.10'//轮播图
implementation 'com.github.bumptech.glide:glide:4.9.0'//glide依赖
2.布局
<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:padding="10dp"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".mvp.view.banner.BannerActivity">
<com.youth.banner.Banner
android:id="@+id/banner"
android:layout_width="match_parent"
android:layout_height="220dp" />
</LinearLayout>
3.定义类用于图片加载
public class BannerLoader extends ImageLoader {
@Override
public void displayImage(Context context, Object path, ImageView imageView) {
//Glide
Glide.with(context)
.load(path)
.into(imageView);
}
}
ui页面(本地图片轮播)
public class BannerActivity extends AppCompatActivity {
private Banner banner;
//定义图片集合
private List<Integer> list_img = new ArrayList<>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_banner);
initView();
}
private void initView() {
banner = (Banner) findViewById(R.id.banner);
//添加数据
list_img.add(R.drawable.a4);
list_img.add(R.drawable.a5);
list_img.add(R.drawable.a6);
list_img.add(R.drawable.a7);
list_img.add(R.drawable.a8);
list_img.add(R.drawable.a9);
// 设置标题
// banner.setBannerTitles(title);
// 设置时间
// banner.setDelayTime(500);
// 自动播放
// banner.isAutoPlay(true);
// 位置
// banner.setIndicatorGravity(BannerConfig.CENTER);
// 设置动画效果
// banner.setBannerAnimation(Transformer.Accordion);
// 样式
// banner.setBannerStyle(BannerConfig.CIRCLE_INDICATOR_TITLE_INSIDE);
//设置图片加载器
banner.setImageLoader(new BannerLoader());
//显示图片
banner.setImages(list_img);
//启动
banner.start();
}
}
ui页面(网络加载图片轮播)
//别忘记网络权限
<uses-permission android:name="android.permission.INTERNET" />
public class BannerActivity extends AppCompatActivity {
private Banner banner;
//定义图片集合
private List<String> list_img = new ArrayList<>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_banner);
initView();
}
private void initView() {
banner = (Banner) findViewById(R.id.banner);
//添加数据
list_img.add("https://ss0.bdstatic.com/70cFvHSh_Q1YnxGkpoWK1HF6hhy/it/u=963474092,2521024468&fm=26&gp=0.jpg");
list_img.add("https://ss1.bdstatic.com/70cFuXSh_Q1YnxGkpoWK1HF6hhy/it/u=3682336740,3569803929&fm=26&gp=0.jpg");
list_img.add("https://ss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=3333949999,1534675289&fm=26&gp=0.jpg");
list_img.add("https://ss0.bdstatic.com/70cFvHSh_Q1YnxGkpoWK1HF6hhy/it/u=534874572,2706901170&fm=26&gp=0.jpg");
list_img.add("https://ss1.bdstatic.com/70cFvXSh_Q1YnxGkpoWK1HF6hhy/it/u=1706250503,1703821238&fm=26&gp=0.jpg");
//设置图片加载器
banner.setImageLoader(new BannerLoader());
//显示图片
banner.setImages(list_img);
//启动
banner.start();
}
}