Android Banner(无限轮播图)控件的简单使用(网络数据OkHttp3)
一言不合就上图
banner是第三方集成好的直接注入依赖就可以用
老套路先注入依赖:
//banner这个版本才是王道(我的studio是2.3.3)compile 'com.youth.banner:banner:1.4.9'
这是配合使用的依赖(用不用看个人喜好和习惯):
//http3compile 'com.squareup.okhttp3:okhttp:3.9.0'//图片Glidecompile 'com.github.bumptech.glide:glide:3.7.0'//Gsoncompile 'com.google.code.gson:gson:2.8.1'
然后布局:
<com.youth.banner.Bannerandroid:id="@+id/banner"android:layout_width="match_parent"android:layout_height="300dp"></com.youth.banner.Banner>
别忘记加网络权限:
<uses-permission android:name="android.permission.INTERNET"/>
然后是图片加载:
可以用Glide,Fresco,picasso(毕加索),imageLoader等… …
我用的是Glid(没别的意思就是用习惯了glid而已)
Glide需要创建类继承imageLoader
//初始化Glic依赖包的类
public class GlidApplication extends ImageLoader {//继承ImageLoader生成displayImage方法@Overridepublic void displayImage(Context context, Object path, ImageView imageView) {//初始化Glide包Glide.with(context).load(path).into(imageView);}
}
然后是代码实现banner
//初始化控件banner = (Banner) findViewById(R.id.banner);//ok网络请求OkHttpClient okHttpClient = new OkHttpClient();Request request = new Request.Builder().url("http://api.tianapi.com/meinv/?key=2a0024d1f7f558e09936f697580f1643&num=5").build();Call call = okHttpClient.newCall(request);//用OkHttp里面的Call对象打点调用 异步请求数据的抽象方法call.enqueue(new Callback() {//建个集合用来存放图片url的地址private List<String> picUrlList;//此集合是bean解析过来的集合private List<LadyBean.NewslistBean> list;@Overridepublic void onFailure(Call call, IOException e) {//访问网络失败的方法(自动生成的)}//访问网络成功的方法(自动生成的)@Overridepublic void onResponse(Call call, Response response) throws IOException {//把数据流转换成json字符串String json = response.body().string();Log.e("++++++++","这是访问到的数据:"+json);//开始用gson解析Gson gson = new Gson();LadyBean ladyBean = gson.fromJson(json, LadyBean.class);//拿到bean类里的集合list = ladyBean.getNewslist();Log.e("++++++++","这是bean集合里的数据:"+list);//设全局此集合专门用来存放图片url地址的picUrlList = new ArrayList<String>();for (int i = 0; i < list.size(); i++) {//循环把图片地址添加到string泛型的集合里picUrlList.add(list.get(i).getPicUrl());}Log.e("++++++++","这是专门存放图片url集合里的数据:"+picUrlList);//子线程不能更新住UI//所以 【必须】 开启返回主线程的方法runOnUiThread(new Runnable() {@Overridepublic void run() {//把更新主UI视图的代码放这里面//.setImagees(把图片地址集合)//.setImageLoader(new你的Glid类)//.start开始装逼吧banner.setImages(picUrlList).setImageLoader(new GlidApplication()).start();}});}});
这就OK了。
强调1点:
1我的Android studio是2.3.3版本,SDK用的v7…..26.+的
Android Banner(无限轮播图)控件的简单使用(网络数据OkHttp3)相关推荐
- Android自定义控件之轮播图控件
背景 最近要做一个轮播图的效果,网上看了几篇文章,基本上都能找到实现,效果还挺不错,但是在写的时候感觉每次都要单独去重新在Activity里写一堆代码.于是自己封装了一下.这里只是做了下封装成一个控件 ...
- BannerDemo【图片轮播图控件】
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 这里简单记录下一个开源库youth5201314/banner的运用.具体用法请阅读<youth5201314/banner& ...
- Android之无限轮播图源代码
Android轮播广告图是大家经常用到的一个控件今天便撸了一把代码 实现步骤 使用Viewpager进行实现图片滑动 设置ViewPager的数据,让其无限切换 Activity代码 public c ...
- ajax轮播图控件,基于json数据的jquery卡片轮播图插件
这是一款基于json数据的jquery卡片轮播图插件.该插件通过ajax来获取卡片的信息,动态显示卡片.它还提供不使用ajax的方式来获取数据,和其它一些api接口. 使用方法 在页面中引入jquer ...
- 第三方轮播图控件SliderLayout使用
导入依赖库 dependencies {compile "com.android.support:support-v4:+"compile 'com.squareup.picass ...
- Android三方框架banner实现轮播图
Android三方框架banner实现轮播图 关于 效果图 第一步,添加引用 第二步,新增实体类及测试数据 第三步,添加banner实例控件,修改主界面代码 自定义图片+标题轮播图 效果图 你以为到这 ...
- 用JavaScript实现网页无限轮播图效果,附整套源码
用JavaScript实现无限轮播图效果(附源码) javascript群内每日课题-今日课题:用JavaScript实现无限轮播图效果 PS:很多企业通用的案例自己再学习过程中肯定是要熟练的,所以今 ...
- 无限轮播图 三种实现方式
无限轮播图三种实现方式:(源码地址) 1.首尾相接方式: https://github.com/jakajacky/DRScrollerView 2.imageView复用方式: https://gi ...
- 自定义组合控件:Banner、轮播图、广告栏控件
1. 项目概述 这里,我们使用自定义组合控件实现一个自动轮播的广告条,也叫轮播图,完整版的效果图如下图所示.其实,这就是我们经常见到的滚动广告,默认情况下每隔N 秒会自动滚动,用手指左右滑动时也会切换 ...
最新文章
- hadoop day 3
- 研究:即便是最好的人脸识别算法也会受到口罩干扰
- compattelrunner.exe占用磁盘过高_Linux 系统 CPU 占用率太高?
- 自动化运维平台OMserver部署过程中解决的问题1
- Leetcode 剑指 Offer 53 - I. 在排序数组中查找数字 I (每日一题 20210928)
- C++对C的加强之新增Bool类型关键字
- 使用docker registry建立私有镜像仓库
- Centos5 install vnc
- import pandas as pd什么意思_Pandas万花筒:让绘图变得更美观
- RabbitMQ集群故障恢复详解
- 存储桶列表访问权限_十分钟从入门到精通(上)——OBS权限配置
- securecrt使用_SecureCRT会话丢失原因及解决方法
- 【movable-area、movable-view】 可移动区域组件说明
- Java API简介以及以及常用的类库介绍
- 安卓显示视频画面的动画效果及代码
- 知识树 = 系统思维 + 外接大脑
- windows 查看/清除DNS解析记录
- 01-Docker-介绍与安装(CentOS)
- SQL查询语句练习(二)
- java上机实验心得_java上机实验心得体会报告