Banner广告轮播的使用

项目地址:http://download.csdn.net/detail/daidaishuiping/9751670
框架地址:https://github.com/youth5201314/banner
step1.添加依赖
compile 'com.youth.banner:banner:1.4.8'  //最新版本
compile 'com.github.bumptech.glide:glide:3.7.0'

step2.添加权限到你的 AndroidManifest.xml
 


step3.在布局文件中添加Banner,可以设置自定义属性


step4.重写图片加载器
public class GlideImageLoader extends ImageLoader {
    @Override
    public void displayImage(Context context, Object path, ImageView imageView) {
        //具体方法内容自己去选择,次方法是为了减少banner过多的依赖第三方包,所以将这个权限开放给使用者去选择
        Glide.with(context.getApplicationContext())
                .load(path)
                .crossFade()
                .into(imageView);
    }
}

step5.在Activity或者Fragment中配置Banner
public class MainActivity extends AppCompatActivity implements OnBannerClickListener{

    private Banner banner;
    private List images;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        String[] urls = getResources().getStringArray(R.array.url);
//        String[] urls=getResources().getStringArray(R.array.localUrl);
        List list = Arrays.asList(urls);
        images = new ArrayList(list);

        banner = (Banner) findViewById(R.id.banner);
        //设置图片加载器

        banner.setImageLoader(new GlideImageLoader());
        //设置图片集合
        banner.setImages(images);
//        //设置轮播时间
//        banner.setDelayTime(1500);
        //设置指示器位置(当banner模式中有指示器时)
        banner.setIndicatorGravity(BannerConfig.RIGHT);
        //设置banner动画效果
        banner.setBannerAnimation(Transformer.CubeOut);
        //设置点击事件
        banner.setOnBannerClickListener(this);
        //banner设置方法全部调用完毕时最后调用
        banner.start();
    }

    //如果你需要考虑更好的体验,可以这么操作
    @Override
    protected void onStart() {
        super.onStart();
        //开始轮播
        banner.startAutoPlay();
    }

    @Override
    protected void onStop() {
        super.onStop();
        //结束轮播
        banner.stopAutoPlay();
    }

    @Override
    public void OnBannerClick(int position) {
        Toast.makeText(this,"你点击了:"+position,Toast.LENGTH_SHORT).show();
    }
}

step6.创建arrays.xml


    
        http://ww4.sinaimg.cn/large/006uZZy8jw1faic1xjab4j30ci08cjrv.jpg
        http://ww4.sinaimg.cn/large/006uZZy8jw1faic21363tj30ci08ct96.jpg
        http://ww4.sinaimg.cn/large/006uZZy8jw1faic259ohaj30ci08c74r.jpg
        http://ww4.sinaimg.cn/large/006uZZy8jw1faic2b16zuj30ci08cwf4.jpg
        http://ww4.sinaimg.cn/large/006uZZy8jw1faic2e7vsaj30ci08cglz.jpg
    

    
        file:///android_asset/banner.png
        file:///android_asset/banner.png
    



你可能感兴趣的:(第三方框架的使用)