步驟:
1、初始化數據,得到圖片地址和標題(標題也可以不要)
2、設置banner屬性
3、佈局添加banner控件
4、代碼實現
1):添加依賴
compile 'com.youth.banner:banner:1.4.9'
2)添加權限
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
3)佈局文件:
<com.youth.banner.Banner
android:id="@+id/banner"
android:layout_width="match_parent"
android:layout_height="150dp" />
4)代碼:
public class Test extends AppCompatActivity implements OnBannerListener { private Banner mBanner; private ArrayList<String> imagePathList; private ArrayList<String> titleList; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initData(); initView(); } /** * 初始化banner,設置屬性 */ private void initView() { mBanner = (Banner) findViewById(R.id.banner); //設置內置樣式,共有六種可以點入方法內逐一體驗使用。 mBanner.setBannerStyle(BannerConfig.CIRCLE_INDICATOR_TITLE_INSIDE); //設置圖片加載器,圖片加載器在下方 mBanner.setImageLoader(new MyImageLoader()); //設置圖片網址或地址的集合 mBanner.setImages(imagePathList); //設置輪播的動畫效果,內含多種特效,可點入方法內查找後內逐一體驗 mBanner.setBannerAnimation(Transformer.Default); //設置輪播圖的標題集合 mBanner.setBannerTitles(titleList); //設置輪播間隔時間 mBanner.setDelayTime(3000); //設置是否爲自動輪播,默認是“是”。 mBanner.isAutoPlay(true); //設置指示器的位置,小點點,左中右。 mBanner.setIndicatorGravity(BannerConfig.CENTER) //以上內容都可寫成鏈式佈局,這是輪播圖的監聽。比較重要。方法在下面。 .setOnBannerListener(this) //必須最後調用的方法,啓動輪播圖。 .start(); } private void initData() { imagePathList = new ArrayList<>(); titleList = new ArrayList<>(); imagePathList.add(""); //第一張圖片 imagePathList.add(""); //第二張圖片地址 imagePathList.add(""); imagePathList.add(""); titleList.add("1"); titleList.add("2"); titleList.add("3"); titleList.add("4"); } @Override public void OnBannerClick(int position) { Toast.makeText(this, "click:" + position, Toast.LENGTH_SHORT).show(); } //自定義的圖片加載器 private class MyImageLoader extends ImageLoader { @Override public void displayImage(Context context, Object path, ImageView imageView) { Glide.with(context).load((String) path).into(imageView); } } }