Android——图片轮播
Android技术——轮播功能
轮播需要什么? 答:实现图片与广告语展示、循环播发以及手动切换、支持加载本地与网络图片。
性能优化? 答:多张图片与指示器展示、自动与定时、循环播发、滑动流畅并且无卡顿、加载速度、图片点击。
下面介绍一种简单又好用的图片轮播控件-banner
1.先在gradle加入依赖包:compile 'com.youth.banner:banner:1.1.5'
2.布局文件:
<com.youth.banner.Banner
android:layout_width="match_parent"
android:layout_height="300dp"
android:id="@+id/banner">
</com.youth.banner.Banner>
3.然后在Activity进行配置
public class BannerActivity extends AppCompatActivity {
private Banner banner;
//设置图片资源:url或本地资源
String[] images= new String[] {
"http://img.zcool.cn/community/0166c756e1427432f875520f7cc838.jpg",
"http://img.zcool.cn/community/018fdb56e1428632f875520f7b67cb.jpg",
"http://img.zcool.cn/community/01c8dc56e1428e6ac72531cbaa5f2c.jpg",
"http://img.zcool.cn/community/01fda356640b706ac725b2c8b99b08.jpg",
"http://img.zcool.cn/community/01fd2756e142716ac72531cbf8bbbf.jpg",
"http://img.zcool.cn/community/0114a856640b6d32f87545731c076a.jpg"};
//设置图片标题:自动对应
String[] titles=new String[]{
"全场2折起","十大星级品牌联盟",
"嗨购5折不要停","12趁现在",
"嗨购5折不要停,12.12趁现在",
"实打实大顶顶顶顶"};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_banner);
banner= (Banner) findViewById(R.id.banner); //绑定id
banner.setBannerStyle(Banner.CIRCLE_INDICATOR_TITLE); //设置样式
banner.setIndicatorGravity(Banner.CENTER); //指示器居中
banner.setBannerTitle(titles); //广告词
banner.isAutoPlay(true); //是否自动播放
banner.setDelayTime(5000); //设置时间
//自定义图片加载框架
banner.setImages(images, new Banner.OnLoadImageListener() {
@Override
public void OnLoadImage(ImageView view, Object url) {
System.out.println("加载中");
Glide.with(getApplicationContext()).load(url).into(view); //glide图片加载 超级好用
System.out.println("加载完");
}
});
//设置点击事件
banner.setOnBannerClickListener(new Banner.OnBannerClickListener() {
@Override
public void OnBannerClick(View view, int position) {
Toast.makeText(getApplicationContext(),"你点击了:"+position,Toast.LENGTH_SHORT).show();
}
});
}
}
4.加入网络权限:
<uses-permission android:name="android.permission.INTERNET" />
展示:


是不是很简单啊!反正我觉得很好用,没有了以前viewPager的卡死,而且配置程度很高,可以灵活的设置图片的数量、循环时间、图片加载的方式,指示器配置等。这个黑科技还不错吧!觉得不错的同学点个赞吧!
想要了解更多的可以去原作者的GitHub Android广告图片轮播控件
Android——图片轮播的更多相关文章
- 一起写一个Android图片轮播控件
注:本文提到的Android轮播控件Demo地址: Android图片轮播控件 1. 轮播控件的组成部分 我们以知乎日报Android客户端的轮播控件为例,分析一下轮播控件的主要组成: 首先我们要有用 ...
- Android 图片轮播(最简单的)
布局文件 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android ...
- Android图片轮播控件
Android广告图片轮播控件,支持无限循环和多种主题,可以灵活设置轮播样式.动画.轮播和切换时间.位置.图片加载框架等! 使用步骤 Step 1.依赖banner Gradle dependenci ...
- 【Android】android图片轮播
第一步,先写一个布局文件 <com.main.util.SlideShowView android:id="@+id/slideshowView" android:layou ...
- Android开发(九)——ViewFlipper实现图片轮播
图片轮播的实现方法有很多,主要有View.ViewFilpper.ViewFilpper系统自带的一个多页面管理控件,它可以实现子界面的自动切换. 首先 需要为ViewFlipper加入View (1 ...
- Android 开发最牛的图片轮播控件,基本什么都包含了。
Android图片轮播控件 源码下载地址: Android 图片轮播 现在的绝大数app都有banner界面,实现循环播放多个广告图片和手动滑动循环等功能.因为ViewPager并不支持循环翻页, ...
- Android——播放器和图片轮播
layout文件: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:an ...
- Android学习笔记之图片轮播...
PS:一个bug又折腾了一个下午....哎... 学习内容: 1.Android利用ViewPager和PagerAdapter实现图片轮播... 2.使用反射机制获取Android的资源信息... ...
- Android Studio导入GitHub上的项目常见问题(以图片轮播开源项目为实例)
前言:github对开发者而言无疑是个宝藏,但想利用它可不是件简单的事,用Android studio导入开源项目会遇到各种问题,今天我就以github上的一个图片轮播项目为例,解决导入过程中的常见问 ...
随机推荐
- git合并两个不同的仓库
目前开发是2个仓库,线上仓库online_a(对应的branch分支为online),测试环境online_b(对应的branch分支为demo),测试环境需要时刻保持onine_a上的最新稳定稳定代 ...
- Spring Cloud Alibaba Nacos 入门
概览 阿里巴巴在2018年7月份发布Nacos, Nacos是一个更易于构建云原生应用的动态服务发现.配置管理和服务管理平台.并表示在6-8个月完成到生产可用的0.8版本,目前版本是0.9版本. Na ...
- 原生JS实现简易轮播图
原生JS实现简易轮播图(渐变?) 最近做网页总是会用到轮播图,我就把之前写的轮播图单独拿出来吧,如果有...如果真的有人也需要也可以复制去用用啊..哈~.. window.onload = funct ...
- 为什么选择 Intellij IDEA 作为日常开发工具
作为一个从事 Java 开发的程序员,每天离不开编辑器的帮助.还记得刚开始学习 Java 编程的时候,使用 Eclipse 作为日常开发工具.后来工作以后,需要使用 Intellij IDEA,刚开始 ...
- 程序员50题(JS版本)(三)
程序11:判断101~200之间有多少个素数,并输出所有素数 for(var i=101,num=0;i<=200;i++){ for(var j=2;j<=i;j++){ if(i%j= ...
- TS学习随笔(三)->接口
终于来到了比较重要的知识,接口,有多重要呢,反正是很重要好啵 在 TypeScript 中,我们使用接口(Interfaces)来定义对象的类型. 那什么是接口呢,在面向对象语言中,接口(Interf ...
- Android Studio调试手机或者安装APK的时候出现install failed test only
1.检查\app\src\main\AndroidMainfest.xml中是否有testOnly属性为true,如果有去掉或者改为false 2.检查Android Studio和gradle版本是 ...
- JAVA forname classnotfoundexception 错误
今日在使用Class.forName方法的时候报了错误: JAVA forname classnotfoundexception 原因是Class.forName(className);里面的clas ...
- (最详细)小米MIX的Usb调试模式在哪里打开的教程
当我们使用安卓手机链接pc的时候,或者使用的有些应用比如我们团队营销团队当使用的应用引号精灵,以前老版本就需要开启Usb调试模式下使用,现当新版本不需要了,如果手机没有开启Usb调试模式,pc则没法成 ...
- Tips on GORM, Avoid Error about "duplicate column name: id"
The GORM is an super easy ORM solution for Go language. But many people would get the error about du ...