您的位置:首页 > 移动开发 > Android开发

android 广告轮播位Banner轮播位 使用超级方便

2016-07-25 23:44 330 查看
GitHub 上面介绍的更详细:https://github.com/CodingForAndroid/CircleViewPager 
    

原文地址



 布局文件

[java] view
plain copy

 print?





<?xml version="1.0" encoding="utf-8"?>  

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  

xmlns:tools="http://schemas.android.com/tools"  

android:layout_width="match_parent"  

android:layout_height="match_parent"  

android:paddingBottom="@dimen/activity_vertical_margin"  

android:paddingLeft="@dimen/activity_horizontal_margin"  

android:paddingRight="@dimen/activity_horizontal_margin"  

android:paddingTop="@dimen/activity_vertical_margin"  

tools:context="com.jorge.circleviewpager.MainActivity">  

<com.jorge.circlelibrary.ImageCycleView  

android:layout_height="wrap_content"  

android:layout_width="fill_parent"  

android:id="@+id/cycleView"/>  

</LinearLayout>  

相关Activity

[java] view
plain copy

 print?





package com.jorge.circleviewpager;  

import android.content.Context;  

import android.support.v7.app.AppCompatActivity;  

import android.os.Bundle;  

import android.util.DisplayMetrics;  

import android.view.View;  

import android.widget.ImageView;  

import android.widget.LinearLayout;  

import com.jorge.circlelibrary.ImageCycleView;  

import java.util.ArrayList;  

public class MainActivity extends AppCompatActivity {  

ImageCycleView imageCycleView;  

@Override  

protected void onCreate(Bundle savedInstanceState) {  

super.onCreate(savedInstanceState);  

setContentView(R.layout.activity_main);  

/** 找到轮播控件*/  

imageCycleView= (ImageCycleView) findViewById(R.id.cycleView);  

/**装在数据的集合 文字描述*/  

ArrayList<String> imageDescList=new ArrayList<>();  

/**装在数据的集合 图片地址*/  

ArrayList<String> urlList=new ArrayList<>();  

/**添加数据*/  

urlList.add("http://attach.bbs.miui.com/forum/month_1012/101203122706c89249c8f58fcc.jpg");  

urlList.add("http://bbsdown10.cnmo.com/attachments/201308/06/091441rn5ww131m0gj55r0.jpg");  

urlList.add("http://kuoo8.com/wall_up/hsf2288/200801/2008012919460743597.jpg");  

urlList.add("http://d.3987.com/taiqiumein_141001/007.jpg");  

urlList.add("http://kuoo8.com/wall_up/hsf2288/200807/2008071115370276173.jpg");  

imageDescList.add("小仓柚子");  

imageDescList.add("抚媚妖娆性感美女");  

imageDescList.add("热血沸腾 比基尼");  

imageDescList.add(" 台球美女");  

imageDescList.add("身材妙曼");  

initCarsuelView(imageDescList, urlList);  

}  

/**初始化轮播图*/  

public void initCarsuelView(ArrayList<String> imageDescList,ArrayList<String>urlList) {  

LinearLayout.LayoutParams cParams = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, getScreenHeight(MainActivity.this) * 3 / 10);  

imageCycleView.setLayoutParams(cParams);  

ImageCycleView.ImageCycleViewListener mAdCycleViewListener = new ImageCycleView.ImageCycleViewListener() {  

@Override  

public void onImageClick(int position, View imageView) {  

/**实现点击事件*/  

}  

@Override  

public void displayImage(String imageURL, ImageView imageView) {  

/**在此方法中,显示图片,可以用自己的图片加载库,也可以用本demo中的(Imageloader)*/  

ImageLoaderHelper.getInstance().loadImage(imageURL, imageView);  

}  

};  

/**设置数据*/  

imageCycleView.setImageResources(imageDescList,urlList, mAdCycleViewListener);  

imageCycleView.startImageCycle();  

}  

/** 

* 得到屏幕的高度 

* @param context 

* @return 

*/  

public static int getScreenHeight(Context context){  

if (null == context) {  

return 0;  

}  

DisplayMetrics dm = new DisplayMetrics();  

dm = context.getApplicationContext().getResources().getDisplayMetrics();  

return dm.heightPixels;  

}  

}  

内部封装,外部调用起来比较方便可以去Github 中下载 library(里面只有两个文件) 来导入项目中 
https://github.com/CodingForAndroid/CircleViewPager
也可以 通过下面方式导入, build.gradle 
直接导入 dependencies {    compile 'com.jorge.circleview:circlelibrary:1.0.0'}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: