Android实现简单的banner轮播图

本文实例为大家分享了Android实现简单banner轮播图的具体代码,供大家参考,具体内容如下

说明:想玩一个简单的轮播图效果  用的第三方的框架玩一下,支持设置轮播图多种样式

1.效果图

2.添加依赖

implementation 'com.youth.banner:banner:1.4.10'

implementation "com.github.bumptech.glide:glide:4.6.1"

3.主界面

package com.example.myapplication34;

import android.os.Bundle;

import com.youth.banner.Banner;

import com.youth.banner.BannerConfig;

import com.youth.banner.Transformer;

import java.util.ArrayList;

import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {

//界面控件

private Banner mbanner;

//轮播图的数据

private MyImageLoader myImageLoader;

private ArrayList<Integer> photos;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

Bundle bundle = getIntent().getBundleExtra("bundle");

initData();

initView();

}

//界面初始化

private void initView() {

mbanner = (Banner) findViewById(R.id.banner);

//设置轮播的样式

mbanner.setBannerStyle(BannerConfig.CIRCLE_INDICATOR); //CIRCLE_INDICATOR

//设置图片加载器

mbanner.setImageLoader(myImageLoader);

//设置轮播的动画效果,里面有很多种特效,可以都看看效果。

mbanner.setBannerAnimation(Transformer.ZoomOutSlide);

//设置轮播间隔时间

mbanner.setDelayTime(3000);

//设置是否为自动轮播,默认是true

mbanner.isAutoPlay(true);

//设置指示器的位置,小点点,居中显示

mbanner.setIndicatorGravity(BannerConfig.CENTER);

//设置图片加载地址

mbanner.setImages(photos)

//开始调用的方法,启动轮播图。

.start();

}

//数据初始化

private void initData() {

myImageLoader = new MyImageLoader();

//将轮播的图片放在photos 那里

photos = new ArrayList<Integer>();

photos.add(R.mipmap.photo2);

photos.add(R.mipmap.photo1);

photos.add(R.mipmap.photo3);

photos.add(R.mipmap.photo4);

photos.add(R.mipmap.photo5);

photos.add(R.mipmap.photo6);

}

}

4.设置图片源数据

package com.example.myapplication34;

import android.content.Context;

import android.widget.ImageView;

import com.bumptech.glide.Glide;

import com.youth.banner.loader.ImageLoader;

public class MyImageLoader extends ImageLoader {

@Override

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

Glide.with(context.getApplicationContext())

.load(path)

.into(imageView);

}

}

5.布局

<?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="match_parent"

tools:context=".MainActivity">

<com.youth.banner.Banner

android:id="@+id/banner"

android:layout_width="match_parent"

android:layout_height="200dp"

app:layout_constraintBottom_toBottomOf="parent"

app:layout_constraintTop_toTopOf="parent" />

</LinearLayout>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

以上是 Android实现简单的banner轮播图 的全部内容, 来源链接: utcz.com/p/243547.html

回到顶部