@interface ViewController () <</span>SDCycleScrollViewDelegate>

@end

@implementation ViewController

- (void)viewDidLoad {

[super viewDidLoad];

self.view.backgroundColor =
[UIColor colorWithRed:0.98green:0.98 blue:0.98 alpha:0.99];

UIImageView *backgroundView = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"005.jpg"]];

backgroundView.frame = self.view.bounds;

[self.view addSubview:backgroundView];

// 情景一:采用本地图片实现

NSArray *images = @[[UIImage imageNamed:@"h1.jpg"],

[UIImage imageNamed:@"h2.jpg"],

[UIImage imageNamed:@"h3.jpg"],

[UIImage imageNamed:@"h4.jpg"]

];

// 情景二:采用网络图片实现

NSArray *imagesURLStrings = @[

@"https://ss2.baidu.com/-vo3dSag_xI4khGko9WTAnF6hhy/super/whfpf=425,260,50/sign=a4b3d7085dee3d6d2293d48b252b5910/0e2442a7d933c89524cd5cd4d51373f0830200ea.jpg",

@"https://ss0.baidu.com/-Po3dSag_xI4khGko9WTAnF6hhy/super/whfpf=425,260,50/sign=a41eb338dd33c895a62bcb3bb72e47c2/5fdf8db1cb134954a2192ccb524e9258d1094a1e.jpg",

@"http://c.hiphotos.baidu.com/image/w=400/sign=c2318ff84334970a4773112fa5c8d1c0/b7fd5266d0160924c1fae5ccd60735fae7cd340d.jpg"

];

// 情景三:图片配文字

NSArray *titles = @[@"感谢您的支持,如果下载的",

@"如果代码在使用过程中出现问题",

@"您可以发邮件到gsdios@126.com",

@"感谢您的支持"

];

CGFloat w = self.view.bounds.size.width;

// 本地加载 --- 创建不带标题的图片轮播器

SDCycleScrollView *cycleScrollView = [SDCycleScrollViewcycleScrollViewWithFrame:CGRectMake(0, 100,
w, 180)imagesGroup:images];

cycleScrollView.infiniteLoop = YES;

cycleScrollView.delegate = self;

cycleScrollView.pageControlStyle = SDCycleScrollViewPageContolStyleAnimated;

[self.view addSubview:cycleScrollView];

//         --- 轮播时间间隔,默认1.0秒,可自定义

//cycleScrollView.autoScrollTimeInterval = 4.0;

//网络加载 --- 创建带标题的图片轮播器

SDCycleScrollView *cycleScrollView2
= [SDCycleScrollViewcycleScrollViewWithFrame:CGRectMake(0, 320,
w, 180)imageURLStringsGroup:nil]; // 模拟网络延时情景

cycleScrollView2.pageControlAliment =SDCycleScrollViewPageContolAlimentRight;

cycleScrollView2.delegate = self;

cycleScrollView2.titlesGroup = titles;

cycleScrollView2.dotColor = [UIColor yellowColor]; // 自定义分页控件小圆标颜色

cycleScrollView2.placeholderImage = [UIImageimageNamed:@"placeholder"];

[self.view addSubview:cycleScrollView2];

//             --- 模拟加载延迟

dispatch_after(dispatch_time(DISPATCH_TIME_NOW,
(int64_t)(0.5 * NSEC_PER_SEC)), dispatch_get_main_queue(),
^{

cycleScrollView2.imageURLStringsGroup = imagesURLStrings;

});

// 清除缓存

//    [cycleScrollView2 clearCache];

}

#pragma mark - SDCycleScrollViewDelegate

- (void)cycleScrollView:(SDCycleScrollView *)cycleScrollViewdidSelectItemAtIndex:(NSInteger)index

{

NSLog(@"---点击了第%ld张图片",
index);

}

@end

iOS 简易无限滚动的图片轮播器-SDCycleScrollView的更多相关文章

  1. UIScrollView实现图片轮播器的无限滚动

    简介 在现在的一些App中常常见到图片轮播器,一般用于展示广告.新闻等数据,在iOS内并没有现成的控件直接实现这种功能,但是通过UIScrollView的允许分页设置,可以实现滚动轮播的功能. 轮播原 ...

  2. ios之无限 自动 图片轮播器的实现

    比较之前发布的手动无限图片轮播器进行了改进.实现了自动无限轮播的功能.比较适合团购标题分类下面的轮播器功能. 实现思路: * 开启一个定时器,把操作放入消息循环池.每隔一定时间,操作执行一次. * 注 ...

  3. UIScrollView实现图片轮播器及其无限循环效果

    图片轮播器: 一.实现效果 实现图片的自动轮播            二.实现代码 storyboard中布局 代码: 1 #import "YYViewController.h" ...

  4. IOS第六天(3:scrollView 图片轮播器)

    IOS第六天(3:scrollView 图片轮播器) #import "HMViewController.h" #define kImageCount 5 @interface H ...

  5. swift:创建滚动视图的图片轮播器

    用swift创建图片轮播器和用OC创建的方式是一样的,都主要用到UIScrollView和UIImageview这两个控件,有几张图片,就将滚动视图的内容区域大小设置为每一张图片的大小乘以张数即可.然 ...

  6. Android高级图片滚动控件,编写3D版的图片轮播器

    转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/17482089 大家好,好久不见了,最近由于工作特别繁忙,已经有一个多月的时间没写博 ...

  7. ios开发图片轮播器以及定时器小问题

    一:图片轮播器效果如图:能实现自动轮播,到最后一页时,轮播回来,可以实现拖拽滚动 二:代码: #import "ViewController.h" ; @interface Vie ...

  8. ios 学习 广告图片轮播器

    // // ViewController.m // 图片轮播器 // // Created by zjj on 15/5/23. // Copyright (c) 2015年 zjj. All rig ...

  9. 图片轮播器bcastr4.swf“&”符号的问题

    bcastr4.swf是一个很不错的网页图片轮播器,我一直使用它作为网站首页图片轮播的控件. http://xiaogui.org/bcastr-open-source-flash-image-sil ...

随机推荐

  1. Delphi基础-数据类型

    枚举类型 Pascal程序不仅用于数值处理,还更广泛地用于处理非数值的数据.例如,性别.月份.星期几.颜色.单位名.学历.职业等. ​ 1. 枚举类型的定义 格式: type 枚举类型标识符=(标识符 ...

  2. Dockerfile 中的 multi-stage

    在应用了容器技术的软件开发过程中,控制容器镜像的大小可是一件费时费力的事情.如果我们构建的镜像既是编译软件的环境,又是软件最终的运行环境,这是很难控制镜像大小的.所以常见的配置模式为:分别为软件的编译 ...

  3. Ubantu16.04进行Android 8.0源码编译

    参考这篇博客 经过测试,8.0源码下载及编译之后,占用100多G的硬盘空间,尽量给ubantu系统多留一些硬盘空间,如果后续需要在编译好的源码上进行开发,需要预留更多的控件,为了防止后续出现文件权限问 ...

  4. sspanel 添加远程节点问题汇总

    链接数据库错误: InternalError: (1130, u"Host '97.64.40.100' is not allowed to connect to this MySQL se ...

  5. [转]Git教程【译】

    [转]Git教程[译] http://www.cnblogs.com/zhangjing230/archive/2012/05/09/2489745.html 原文出处:http://www.voge ...

  6. nicEditors使用方法

    //声明初始化富文本框到context中 <div> <textarea id="context" name="context" style= ...

  7. CucumberJS 资源

    https://cucumber.io/docs/reference/javascript https://github.com/cucumber/cucumber-js

  8. Java中常见的URL问题及解决方案

    URL无处不在,不过似乎开发人员并没有真正地理解它们,因为在Stack Overflow上经常看到有人在问如何正确的创建一个URL.想知道URL语法是如何工作的,可以看下兄弟连教育总结的这篇文章,非常 ...

  9. python自学日志--基础篇(1)

    从认识python,到学习python,中间经历了挺长一段时间的心理挣扎.人总是对未知的事物有着天生的恐惧感,但是,人又是对未知充斥好奇.所以在最后,还是推开了这扇门,开始学习python. pyth ...

  10. npm scripts 使用指南

    转载自:http://www.ruanyifeng.com/blog/2016/10/npm_scripts.html Node 开发离不开 npm,而脚本功能是 npm 最强大.最常用的功能之一. ...