相信大家都知道每个APP中都会有广告栏用来推广一些东西,部分APP是通过Viewpager实现,下面我是通过开源库Banner实现(绝对简单),Banner开源详情:https://github.com/youth5201314/banner   (多种方式可选择)

效果图:

Banner开源库下载:http://download.csdn.net/detail/qq_26650589/9875699

下载完成过后进行导入开源库,这里就不在这里展示出来啦,导入开源库遇到问题的请看博文:http://blog.csdn.net/qq_26650589/article/details/73526367

后面会使用到Picasso图片加载图,所以先把Picasso下载一下:http://download.csdn.net/detail/qq_26650589/9695886

将下载的Picasso复制到libs中,然后在build里的dependencies中引入:

compile files('libs/picasso-2.5.2.jar')//picasso-2.5.2.jar要和架包名称相同

1、activity布局:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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"tools:context="com.wdl.banner.MainActivity"><com.youth.banner.Bannerandroid:id="@+id/bannervp"android:layout_width="match_parent"android:layout_height="200dp"/>
</RelativeLayout>

2、MainActivity.java:

public class MainActivity extends AppCompatActivity {private List<String> img = new ArrayList<>();@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);Banner banner= (Banner) findViewById(R.id.bannervp);//添加图片img.add("https://ss1.bdstatic.com/70cFvXSh_Q1YnxGkpoWK1HF6hhy/it/u=1089399937,1684001946&fm=23&gp=0.jpg");img.add("https://ss0.bdstatic.com/70cFuHSh_Q1YnxGkpoWK1HF6hhy/it/u=787324823,4149955059&fm=23&gp=0.jpg");img.add("https://ss0.bdstatic.com/70cFuHSh_Q1YnxGkpoWK1HF6hhy/it/u=3514483810,1208920576&fm=23&gp=0.jpg");img.add("https://ss1.bdstatic.com/70cFuXSh_Q1YnxGkpoWK1HF6hhy/it/u=1917280427,3920336884&fm=23&gp=0.jpg");banner.setImageLoader(new GlideImageLoader());banner.setIndicatorGravity(BannerConfig.RIGHT);//圆点的位置banner.setImages(img).//加载的图片setBannerStyle(BannerConfig.CIRCLE_INDICATOR).setDelayTime(2000).start();//图片循环滑动的时间2秒//设置点击事件banner.setOnBannerListener(new OnBannerListener() {@Overridepublic void OnBannerClick(int position) {switch (position){case 0:Toast.makeText(MainActivity.this,"1111",Toast.LENGTH_LONG).show();break;case 1:Toast.makeText(MainActivity.this,"222",Toast.LENGTH_LONG).show();break;case 2:Toast.makeText(MainActivity.this,"333",Toast.LENGTH_LONG).show();break;case 3:Toast.makeText(MainActivity.this,"444",Toast.LENGTH_LONG).show();break;}}});}
}

2、创建GlideImageLoader图片加载器

/*** Created by Administrator on 2017/5/23 0023.*/
public class GlideImageLoader extends ImageLoader{@Overridepublic void displayImage(Context context, Object path, ImageView imageView) {Picasso.with(context).load((String) path).into(imageView);}
}

Picasso是我们一开始导入的架包

Banner 中提供了很多样式和动画效果: https://github.com/youth5201314/banner

上面实现是通过固定的图片进行显示,下面是通过获取服务器json数据进行显示

2017.7.4更新:http://blog.csdn.net/qq_26650589/article/details/74295684

Android开源Banner实现广告栏相关推荐

  1. Android 开源项目库汇总

    Android UI相关开源项目库汇总,里面集合了OpenDigg 上的优质的Android开源项目库,方便移动开发人员便捷的找到自己需要的项目工具等. 抽屉菜单 MaterialDrawer ★73 ...

  2. Android——开源框架Universal-Image-Loader + Fragment使用+轮播广告

    原文地址: Android 开源框架Universal-Image-Loader完全解析(一)--- 基本介绍及使用 Android 开源框架Universal-Image-Loader完全解析(二) ...

  3. Github优秀Android开源项目,值得引用与学习(注意!里面有巨图! )

    内容添加(--根据trending(today)/java从上往下添加的,根据时间查看,都是github的项目,以及大佬们的点赞的GitHub项目 ) 刚进来的时候需要加载很多图片和gif图片, 所以 ...

  4. Android 开源组件和第三方库汇总

    出自(https://github.com/Tim9Liu9/TimLiu-Android) TimLiu-Android 自己总结的Android开源项目及库. 1. github排名 https: ...

  5. Android开源项目以及开源库集合(持续更新中)

    UI Awesome-MaterialDesign – MaterialDesignCenter改名为Awesome-MaterialDesign,优化了布局,新增了不少库. awesome-andr ...

  6. Android 开源项目分类汇总 APP功能汇总

    Android 开源项目第一篇--个性化控件(View)篇   包括ListView.ActionBar.Menu.ViewPager.Gallery.GridView.ImageView.Progr ...

  7. Android开源项目及库整理总结

    自己总结的Android开源项目及库. github排名https://github.com/trending, github搜索:https://github.com/search UI Aweso ...

  8. GitHub 上排名前 100 的 Android 开源库介绍

    转自:http://www.codeceo.com/article/github-top-100-android-libs.html 本项目主要对目前 GitHub 上排名前 100 的 Androi ...

  9. Android 开源项目分类汇总(很全)

    目录 前言 目前包括: 第一部分 个性化控件(View) 一.ListView 二.ActionBar 三.Menu 四.ViewPager .Gallery 五.GridView 六.ImageVi ...

最新文章

  1. PHP学习之Smarty+CSS+DIV页面居中问题
  2. mugen4g补丁如何使用_如何搜索下载游戏
  3. 西门子安装未找到ssf文件_V5.3安装时显示NO SSF FILE FOUND对话框,我该怎么解决啊? 谢谢!-工业支持中心-西门子中国...
  4. const定义常量_go语言基本语法——常量constant
  5. UE3 Light Functions (光照函数)
  6. cemtos7重置mysql root,Centos7重置MySQL8.0 root密码
  7. Atitit.自定义存储引擎的接口设计 api 标准化 attilax 总结  mysql
  8. Unity 彩色打印日志信息
  9. 纸质合同为什么要升级为电子合同?区别在哪?
  10. 无法解析 maven包的问题
  11. uva1601(The morning after Helloween)解题报告
  12. Unity制作随机数字抽奖小案例
  13. 洛谷 P1569 [USACO11FEB]属牛的抗议Generic Cow Prote…
  14. python 笔记:打开nii格式(nibabel 库)
  15. 58页大数据资源平台建设可行性研究方案(附下载)
  16. 给2021金三银四的程序员们-投简历100份,1份面试通知都没收到,哪里出了问题
  17. C语言入门 hello world
  18. LU分解法(又名Doolittle分解法,直接三角分解法)C++实现
  19. 关于将数字图片转化为字体
  20. 圆周率计算——蒙特卡罗方法

热门文章

  1. 友盟分享小程序_来啦!小程序支持分享朋友圈!
  2. sklearn 逻辑回归中的参数的详解'newton-cg', 'lbfgs', 'liblinear', 'sag', 'saga'
  3. 笔记本设置蓝牙唤醒_笔记本关机耗电快怎么办 笔记本关机耗电快解决方法【详解】...
  4. 技校计算机课程教学课件,技工学校计算机应用基础教学
  5. Android APP Camera2应用(04)录像保存视频流程
  6. 【附源码】计算机毕业设计JAVA智能停车场管理系统
  7. PowerPoint2007通过版式创建幻灯片
  8. Overriding managed version XX for YY
  9. Android开机时间分析
  10. 2022施工员-土建方向-通用基础(施工员)理论题库及在线模拟考试