色破飞机 发表于 2017-7-8 08:41:10

iCarousel——在iOS和Mac OS应用中实现3D CoverFlow旋转木马效果的开源类库

  前言
  iCarousel一个简单、可高度定制的3D CoverFlow开源类库,旨在简化在 iPhone, iPad和Mac OS中生成各种类型的cover flow(视图切换)效果(分页、滚动视图)。用户手指划动图片,图片将不断以3D的形式切换。

  Github托管地址:https://github.com/nicklockwood/iCarousel
  说明
  iOS开发中如果想要你实现滑动效果,可以使用icarousel这个第三方库,还比较好用,感觉用起来有点像tableView。在网上下载这个库,然后在界面文件中,希望混动列表的部分加上一个view,将view的类设为iCarousel,然后设置delegate和dataSource,并且在自己的controller类中,声明要使用iCarousel的协议,包括delegate和datasource的。
  然后就是要实现的协议了,- (NSUInteger)numberOfItemsInCarousel:(iCarousel *)carousel,设置显示在iCarousel上的元素的个数,
- (UIView *)carousel:(iCarousel *)carousel viewForItemAtIndex:(NSUInteger)index reusingView:(UIView *)view,设置在iCarousel上显示的内容,
- (void)carouselDidEndScrollingAnimation:(iCarousel *),可以获得icarousel上停止滑动时当前的元素,因为iCarousel有一个属性是currentItemIndex。
- (CGFloat)carousel:(iCarousel *)carousel valueForOption:(iCarouselOption)option withDefault:(CGFloat)value,可以设置iCarousel的一些属性,比如说可以设置可滑动显示的内容可以循环显示,还可以设置每个元素的高度,每次显示多少个元素等等。

  例子demo
  - (void)viewDidLoad {
  ;
  // Do any additional setup after loading the view, typically from a nib.
  //    实例化旋转木马视图
  self.carousel = [initWithFrame:CGRectMake(0, 100, CGRectGetWidth(self.view.frame), 200)];
  self.carousel.dataSource = self;
  self.carousel.delegate = self;
  //   
页: [1]
查看完整版本: iCarousel——在iOS和Mac OS应用中实现3D CoverFlow旋转木马效果的开源类库