例题:Banner自动无限轮播

build.gradle中加入(加在最下面):compile 'com.youth.banner:banner:1.4.10'

添加之后需要点击右上角的   Sync Now   编译一下

============================================

添加权限:<uses-permission android:name="android.permission.INTERNET"/>

<application/>在这个控件里加入属性:android:name=".MyApplication"
=================================================================libs文件夹下加入jar包:   gson   和   universal-image-loader==================================================================布局:
<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.example.shenhuiran_1210.MainActivity">    <com.youth.banner.Banner        android:layout_height="300dp"        android:layout_width="match_parent"        android:id="@+id/mybanner"/></RelativeLayout>====================================================================主要方法:
import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import com.youth.banner.Banner;import java.util.ArrayList;

public class MainActivity extends AppCompatActivity {    String url = "http://pic39.nipic.com/20140226/18071023_164300608000_2.jpg";    String url1 = "http://a0.att.hudong.com/15/08/300218769736132194086202411_950.jpg";    String url2 = "https://img-my.csdn.net/uploads/201309/01/1378037235_7476.jpg";    String url3 = "http://pic39.nipic.com/20140226/18071023_164300608000_2.jpg";    String url4 = "http://a0.att.hudong.com/15/08/300218769736132194086202411_950.jpg";    String url5 = "https://img-my.csdn.net/uploads/201309/01/1378037235_7476.jpg";    ArrayList<String> urls;    private Banner banner;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        View viewById = findViewById(R.id.mybanner);        banner = (Banner) findViewById(R.id.mybanner);        initView();    }    private void initView() {        //把图片url存放到集合中        urls = new ArrayList<String>();        urls.add(url);        urls.add(url1);        urls.add(url2);        urls.add(url3);        urls.add(url4);        urls.add(url5);        banner = (Banner) findViewById(R.id.mybanner);        banner.setImageLoader(new MyBannerLoader());//添加自定义的图片加载器        banner.setImages(urls);//设置图片资源        banner.start();//开始轮播    }}=============================================================
ImageloaderUtil 方法:
import android.content.Context;import android.graphics.Bitmap;import android.os.Environment;import com.nostra13.universalimageloader.cache.disc.impl.UnlimitedDiskCache;import com.nostra13.universalimageloader.cache.disc.naming.Md5FileNameGenerator;import com.nostra13.universalimageloader.core.DisplayImageOptions;import com.nostra13.universalimageloader.core.ImageLoader;import com.nostra13.universalimageloader.core.ImageLoaderConfiguration;import java.io.File;public class ImageloaderUtil {    /**     * ImageLoader的配置     * @param context     */    public static void initConfig(Context context) {        //配置//        File cacheFile=context.getExternalCacheDir();        File cacheFile= new File(Environment.getExternalStorageDirectory()+"/"+"imgages");        ImageLoaderConfiguration config=new ImageLoaderConfiguration.Builder(context)                .memoryCacheExtraOptions(480, 800)//缓存图片最大的长和宽                .threadPoolSize(2)//线程池的数量                .threadPriority(4)                .memoryCacheSize(2*1024*1024)//设置内存缓存区大小                .diskCacheSize(20*1024*1024)//设置sd卡缓存区大小                .diskCache(new UnlimitedDiskCache(cacheFile))//自定义缓存目录                .writeDebugLogs()//打印日志内容                .diskCacheFileNameGenerator(new Md5FileNameGenerator())//给缓存的文件名进行md5加密处理                .build();        ImageLoader.getInstance().init(config);    }    /**     * 获取图片设置类     * @return     */    public static DisplayImageOptions getImageOptions(){        DisplayImageOptions optionsoptions=new DisplayImageOptions.Builder()                .cacheInMemory(true)//使用内存缓存                .cacheOnDisk(true)//使用磁盘缓存                .bitmapConfig(Bitmap.Config.RGB_565)//设置图片格式                .build();        return optionsoptions;    }}=========================================================================
MyBannerLoader 方法:
import android.content.Context;import android.widget.ImageView;import com.youth.banner.loader.ImageLoader;/** * Created by e531 on 2017/11/17. */public class MyBannerLoader extends ImageLoader {    @Override    public void displayImage(Context context, Object path, ImageView imageView) {        com.nostra13.universalimageloader.core.ImageLoader uImageLoader= com.nostra13.universalimageloader.core.ImageLoader.getInstance();        //path:表示路径 imageview:显示的控件        uImageLoader.displayImage(path.toString(),imageView,ImageloaderUtil.getImageOptions());    }}============================================================================
MyApplication  方法:(在添加权限的name属性中)
import android.app.Application;/** * Created by e531 on 2017/11/17. */public class MyApplication  extends Application{    @Override    public void onCreate() {        super.onCreate();        //初使化        ImageloaderUtil.initConfig(this);    }}

 

转载于:https://www.cnblogs.com/shenhuiran/p/8032592.html

Banner 自动无限轮播(普通)相关推荐

  1. Android自定义View实现自动无限轮播,点击图片进入详情页

    图片接口 http://120.27.23.105/ad/getAd 需要导入Glide设置图片的依赖 compile 'com.github.bumptech.glide:glide:3.7.0' ...

  2. iOS UI篇——轮播图Banner图片动图混合无限轮播

    KJBannerView 介绍一下自己之前写的无限轮播图库,无限自动循环滚动,大家有什么需求可以给我留言,持续更新中- Demo地址:KJBannerViewDemo 功能介绍 KJBannerVie ...

  3. 【Swift】自定义控件无限轮播 + 无限图片轮播

    CocoaPods安装 pod 'PGBannerSwift' 复制代码 使用 1.无限图片轮播 首先引入import PGBannerSwift let banner = PGBanner(fram ...

  4. ViewPager两种方式实现无限轮播

    给自己的忠告:虽然轮子很好用,但是使用轮子的前提是:如果不去封装一些复杂的功能,自己会用最基本的方法写一个,不然再好的轮子那也是别人的,当自己项目遇到和轮子不一样的地方,那就只能束手无策或者改人家的源 ...

  5. 用JavaScript实现网页无限轮播图效果,附整套源码

    用JavaScript实现无限轮播图效果(附源码) javascript群内每日课题-今日课题:用JavaScript实现无限轮播图效果 PS:很多企业通用的案例自己再学习过程中肯定是要熟练的,所以今 ...

  6. 利用RecyclerView实现无限轮播广告条

    代码地址如下: http://www.demodashi.com/demo/14771.html 前言: 公司产品需要新增悬浮广告条的功能,要求是可以循环滚动,并且点击相应的浮条会跳转到相应的界面,在 ...

  7. iOS 两种不同的图片无限轮播

    代码地址如下: http://www.demodashi.com/demo/11608.html 前记 其实想写这个关于无限轮播的记录已经很久很久了,只是没什么时间,这只是一个借口,正如:时间就像海绵 ...

  8. 引导界面滑动导航 + 大于等于1页时无限轮播 + 各种切换动画轮播效果

    参考地址: https://github.com/bingoogolapple/BGABanner-Android#%E6%95%88%E6%9E%9C%E5%9B%BE%E4%B8%8E%E7%A4 ...

  9. iOS无限轮播图片的两种方式

    2019独角兽企业重金招聘Python工程师标准>>> 1 使用UIScrollview实现无限轮播原理 在开发中常需要对广告或者是一些图片进行自动的轮播,也就是所谓的无限滚动. 在 ...

最新文章

  1. ❤️Spark的关键技术回顾,持续更新!【推荐收藏加关注】❤️
  2. 关于debug.keystore文件用法以及错误处理
  3. python中的序列类型和序列号_python~序列类型及操作
  4. QDoc包括代码内联includecodeinline
  5. Java中sleep,wait,yield,join的区别
  6. Nginx之进程间的通信机制-Channel
  7. 硬核分析|腾讯云原生OS内存回收导致关键业务抖动问题
  8. .NET异常设计原则
  9. 搜索——滑雪(poj1088)
  10. 【报告分享】2022年元宇宙全球年度(202页干货):蓄积的力量-北京大学.pdf(附下载链接)...
  11. 公钥与私钥,数字签名
  12. PHP JAVA BASE64 encode decode
  13. 钉钉日志范文100篇_钉钉工作日记(模板一)
  14. cad2019菜单栏怎么调出来_AutoCAD2019工具栏如何调出?工具栏调出方法图文推荐
  15. python3 判断.xlsl表的两列是否一致
  16. linux安装硬盘超过2t,linux 硬盘超过2T问题
  17. 腾讯云运维干货沙龙-海量运维实践大曝光 (一)
  18. JRebel激活与配置
  19. flutter 背景图片毛玻璃效果
  20. [java] 设计模式

热门文章

  1. http文件服务器和ftp文件服务器,http和ftp文件服务器
  2. 19-7-14 学习笔记
  3. 一个成熟的网站模板如何引起用户的注意?
  4. 电脑python安装库_Python安装第三方库的3种方法 -电脑资料
  5. 网页html是什么语言程序,html是什么
  6. 吉大c 语言程序设计奥鹏作业,吉大19秋学期《C语言程序设计》在线作业一【满分答案】...
  7. 求一个简单的java线程代码,Java线程代码的实现方法
  8. 5训练需要更改参数吗_这就是需要的瘦肚子训练,5个杠铃片腹肌训练动作暴汗燃脂瘦腰腹...
  9. confusion_matrix函数的使用
  10. 2015年各银行无抵押信用贷款利率及额度是多少?