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上的一个图片轮播项目为例,解决导入过程中的常见问 ...
随机推荐
- springboot新手使用guns开源框架心得
一.导航 以guns的通知管理为例 l 通知管理的请求地址是localhost:8080/notice l 程序收到这样的请求就去找地址为notice的Controller l 通知控制器收到这 ...
- laravel项目thinksns-plus安装出现RuntimeException Symlink from * to * failed错误
今天xshell安装thinksns-plus的laravel项目时出现了一个错误, [RuntimeException] Symlink from "/root/www.z5w.net/t ...
- 2019-02-18 扩展Python控制台实现中文反馈信息之二-正则替换
"中文编程"知乎专栏原文地址 续前文扩展Python控制台实现中文反馈信息, 实现了如下效果: >>> 学 Traceback (most recent call ...
- Dynamics 365-如何下载新版本的Tools
最近新写了个Plugin,想注册到CRM中,但是使用旧版的PluginRegistration Tool的时候,总是加载不出来Plugin数据,所以寻思下载个最新版的Tool试试.现在下载Tools的 ...
- Apex 中操作用户和组
用户和组概述 Salesforce中对于用户的定义主要体现于两个对象:用户(User)和组(Group).组的成员可以是用户也可以是另一个组. Salesforce中的组可以有多种表示方法,比如队列( ...
- wap2app(五)-- 微信授权登录以及踩过的坑
应用场景是:用Hbuilder打包app,在app中点击微信授权登录或者某一操作,调起微信授权登录,用户授权后拿到用户信息. 一.登录插件配置 先配置微信登录参数 appid和appsecret,在m ...
- 微信小程序控件 横/纵向排列
控件(按钮)横向排列 wxss .view_class { display: flex; flex-direction: row; justify-content: center; } 控件(按钮)纵 ...
- Prometheus Operator 架构 - 每天5分钟玩转 Docker 容器技术(178)
本节讨论 Prometheus Operator 的架构.因为 Prometheus Operator 是基于 Prometheus 的,我们需要先了解一下 Prometheus. Prometheu ...
- Python字典、集合之高山流水
字典dict字典是由大括号{键:值}组成.字典是无序的.字典的键必须是不可变数据类型.不能使用列表作为键,但可以使用元祖作为字典的键.例如: dict_ = {"test":&qu ...
- VMware虚拟机系统无法使用桥接联网
1.环境 VMware 14.1.1 虚拟系统:Windows Server 2008 32位 2.解决办法 打开虚拟网络编辑器 有红框中的提示出现时,就点击更改设置 点击桥接模式,在VMnet信息中 ...