自己写的一个轮播控件,初始化后只要实现两个数据源方法,几行代码就能快速集成,支持本地图片和网络图片,支持点击事件,可定制播放速度、指示器颜色/位置、默认加载图等,效果:
1.下载地址:
2.快速集成方法:
(1).初始化:
JXScrollView *scroll = [[JXScrollView alloc] initWithFrame:CGRectMake(0, 0, SCREENW, 200)];
scroll.dataSource = self;
[self.view addSubview:scroll];
[scroll start];
(2).实现数据源方法(至少实现以下两个)
//返回轮播图片数量
-(NSInteger)numberOfItemInScrollView:(JXScrollView *)scrollView{
return imageArr.count;
}
//返回轮播的图片url
-(NSURL*)scrollView:(JXScrollView *)scrollView urlForItemAtIndex:(NSInteger)index{
return [NSURL URLWithString:imageArr[index]];
}
至此,已经集成了轮播控件。
3.其它方法
(1)加载本地照片,只需把上面返回url的数据源方法替换为如下返回UIImage对象
-(UIImage*)scrollView:(JXScrollView *)scrollView imageForItemAtIndex:(NSInteger)index{
return [UIImage imageNamed:[NSString stringWithFormat:@"image%zd.jpg",index]];
}
(2)点击事件,实现JXScrollViewDelegate方法
-(void)scrollView:(JXScrollView *)scrollView didClickAtIndex:(NSInteger)index{
NSLog(@"Click:%zd",index+1);
}
(3)默认加载图片
-(UIImage*)scrollView:(JXScrollView *)scrollView placeholderImageForIndex:(NSInteger)index{
return [UIImage imageNamed:@"loading"];
}
(4)其它定制
scroll.timeInterval = 5.0;
scroll.hideIndicator = YES;//是否显示加载菊花
scroll.pageControlPosition = JXScrollViewPageControlPositionRight;//pageControl的位置
scroll.pageControlTintColor = [UIColor grayColor];//pageControl的颜色
scroll.pageIndicatorSelectedTintColor = [UIColor redColor];//pageControl的选中颜色