iCarousel是一个类,它继承于UIView。
开源地址 https://github.com/nicklockwood/iCarousel
先看下实际效果 两种类型 可滑动
demo:https://github.com/linjiu/iCarouselDemo
其中热映电影部分用到此类
iCarousel类的实现方式,先通过( iCarouselDataSource)协议方法确定需要显示视图的个数,和创建需要显示的视图。
iCarousel内先创建一个可变字典,用于存储需要显示的单元格视图。创建一个父视图用于显示单元格视图,从字典中取出需要显示的单元格视图添加到创建父视图上,用于显示需要创建的单元格视图,在iCarousel类的内部对这些需要显示的单元格视图进行布局。
重要的基本属性:
iCarouselType; //视图的显示类型
pagingEnabled BOOL 是否可整页滑动
scrollOffset = 0 初始设置偏移量为0
需要设delegate及dataSource
代理方法
//设置显示在iCarousel上的元素的个数
- (NSUInteger)numberOfItemsInCarousel:(iCarousel *)carousel
//设置在iCarousel上显示的内容
- (UIView *)carousel:(iCarousel * __nonnull)carousel viewForItemAtIndex:(NSInteger)index reusingView:(nullable UIView *)view
//转动触发方法
- (void)carouselDidEndScrollingAnimation:(iCarousel *)carousel
-