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>

以上就是本文的全部內容,希望對大傢的學習有所幫助,也希望大傢多多支持WalkonNet。

推薦閱讀: