CocoaPods trunk is moving to be read-only. Read more on the blog, there are 18 months to go.

XDLoopView 1.0.2

XDLoopView 1.0.2

Maintained by Xiexingda.



  • By
  • xiexingda

XDLoopView

一个无限滚动的轮播图 ,(需要用到SDWebImage)

核心思路我已经在blog中给出: http://blog.sina.com.cn/s/blog_14ecb54860102x6og.html

1. 导入头文件 添加代理

#import "XDLoopView.h"

@interface ViewController () <XDLoopDelegate>

2. 创建轮播图

_source为图片资源(可以是远程网址,也可以是本地资源)

_loop = [[XDLoopView alloc]initWithFrame:CGRectMake(0,100,KWIDTH,KITEMHEIGHT)
                                bySourceArray:_source
                                     duration:4
                               defaultBgImage:nil];

_loop.delegate = self;

_loop.pageControlHidden = NO;//不隐藏页码(默认)

_loop.direction = XDLoop_Right_Left;//从右边往左边滚动(默认)

[self.view addSubview:_loop];


3. 轮播图点击事件代理

#pragma mark -- XDLoopViewDelegate

- (void)XDLoopViewDidSelectedAtIndex:(NSInteger)index inLoopView:(XDLoopView *)loopView {

    if (loopView == _loop) {

        NSLog(@"loop");

    }

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


//加载失败或数组资源为空时默认背景图片的点击事件

- (void)XDLoopViewErrorSelectedinLoopView:(XDLoopView *)loopView {

//如果轮播图加载失败,在这个方法里进行重新加载

NSLog(@"当传入的数组为空数组时 的 默认图片的点击事件");

}

//页面变动监听

- (void)XDLoopViewDidChangedByLoopView:(XDLoopView *)loopView currentPage:(NSInteger)page {
    NSLog(@"%d",page);
}


4. 轮播图刷新

// 当数据加载完毕或轮播图有变动时 可以用该方法对轮播图进行刷新

[_loop XDLoopRefreshWithSourceArray:_source];