Android實(shí)現(xiàn)簡(jiǎn)單的banner輪播圖
本文實(shí)例為大家分享了Android實(shí)現(xiàn)簡(jiǎn)單banner輪播圖的具體代碼,供大家參考,具體內(nèi)容如下
說(shuō)明:想玩一個(gè)簡(jiǎn)單的輪播圖效果 用的第三方的框架玩一下,支持設(shè)置輪播圖多種樣式
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;
//輪播圖的數(shù)據(jù)
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);
//設(shè)置輪播的樣式
mbanner.setBannerStyle(BannerConfig.CIRCLE_INDICATOR); //CIRCLE_INDICATOR
//設(shè)置圖片加載器
mbanner.setImageLoader(myImageLoader);
//設(shè)置輪播的動(dòng)畫效果,里面有很多種特效,可以都看看效果。
mbanner.setBannerAnimation(Transformer.ZoomOutSlide);
//設(shè)置輪播間隔時(shí)間
mbanner.setDelayTime(3000);
//設(shè)置是否為自動(dòng)輪播,默認(rèn)是true
mbanner.isAutoPlay(true);
//設(shè)置指示器的位置,小點(diǎn)點(diǎn),居中顯示
mbanner.setIndicatorGravity(BannerConfig.CENTER);
//設(shè)置圖片加載地址
mbanner.setImages(photos)
//開始調(diào)用的方法,啟動(dòng)輪播圖。
.start();
}
//數(shù)據(jù)初始化
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.設(shè)置圖片源數(shù)據(jù)
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>
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Android編程使用緩存優(yōu)化ListView的方法
這篇文章主要介紹了Android編程使用緩存優(yōu)化ListView的方法,涉及ListView針對(duì)sd卡緩存及內(nèi)存緩存的優(yōu)化技巧,需要的朋友可以參考下2015-12-12
Android標(biāo)題欄最右邊添加按鈕的實(shí)例
這篇文章主要介紹了Android標(biāo)題欄最右邊添加按鈕的實(shí)例的相關(guān)資料,希望通過(guò)本文大家能掌握如何操作,需要的朋友可以參考下2017-09-09
詳解Android系統(tǒng)中跨應(yīng)用數(shù)據(jù)分享功能的實(shí)現(xiàn)
這篇文章主要介紹了Android系統(tǒng)中跨應(yīng)用數(shù)據(jù)分享功能的實(shí)現(xiàn),文中分為發(fā)送文字、二進(jìn)制內(nèi)容和圖片三種情況來(lái)講,需要的朋友可以參考下2016-04-04
Android中對(duì)xml文件解析的3種方式總結(jié)
這篇文章主要給大家介紹了關(guān)于Android中對(duì)xml文件解析的3種方式,分別是 Dom 、 SAX 和 dom4j,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2018-02-02
Android編程實(shí)現(xiàn)自定義輸入法功能示例【輸入密碼時(shí)防止第三方竊取】
這篇文章主要介紹了Android編程實(shí)現(xiàn)自定義輸入法功能,可實(shí)習(xí)輸入密碼時(shí)防止第三方竊取的效果,結(jié)合實(shí)例形式詳細(xì)分析了Android布局、控件及輸入法相關(guān)操作技巧,需要的朋友可以參考下2017-01-01
Flutter自動(dòng)路由插件auto_route使用詳解
這篇文章主要為大家介紹了Flutter自動(dòng)路由插件auto_route的基本使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-08-08

