StatusFlow 0.0.3

StatusFlow 0.0.3

测试已测试
Lang语言 Obj-CObjective C
许可证 MIT
发布最后发布2015年3月

Wade Weitzel维护。



  • Wade Weitzel

StatusFlow是一个简单的UICollectionView iOS实现,用于展示动态美观且有意义的状态。

Alt text

特性

StatusFlow是一个具有自定义UICollectionViewFlowLayout的自定义UICollectionView。

它的目的是显示增量状态,使“当前”项的大小是其他项集合视图的两倍,是选中项,并且在视图内水平和垂直居中。前一项目位于中心左侧,下一项目位于中心右侧。其他项不可见,当选中索引递增时将淡入淡出。尽管支持设置任何选中索引的设置,但控制器的意图是通过递增或递减选中索引来使用。因为它是一个自定义UICollectionView,所以支持任何单元格类型(尽管,很可能是,您的单元格将只是一个UIImageView)。由于这是一个信息控件,用户交互被禁用。

使用方法

安装

直接使用

将以下文件复制到您的工作空间中,或者将它们添加为子模块:

  • StatusFlowView.h
  • StatusFlowView.m
  • StatusFlowViewLayout.h
  • StatusFlowViewLayout.m

创建StatusFlow

StatusFlowView的使用与UICollectionView非常相似。请参阅本项目中使用StatusFlow的完整项目示例。

Alt text

  1. 使用storyboard为包含StatusFlow的视图控制器创建storyboard。将UICollectionView拖放到视图控制器中。这将是一个状态流。
  2. 将storyboard的Custom Class -> Class属性设置为WDWStatusFlow。
  3. 从StatusFlow到您的视图控制器创建一个出口。这可以是一个私有属性。
  4. 在XCode中创建一个单元格类。它应该继承自UICollectionViewCell。
  5. 在storyboard中创建单元格,并使用Custom Class -> Class属性将其链接到单元格类。
  6. 确保您的UIViewController符合UICollectionViewDataSource和UICollectionViewDelegateFlowLayout(对于collectionView:layout:sizeForItemAtIndexPath)。
  7. 在ViewController的viewDidLoad方法中,使用StatusFlowView的gapBetweenCells属性来定义单元格间距离。默认是5。
  8. 实现collectionView:numberOfItemsInSection。注意,只能有一个部分。
  9. 实现collectionView:cellForItemAtIndexPath
  10. 在collectionView中实现layout:sizeForItemAtIndexPath:,以设置单元格的大小。单元格的大小是单元格未选中时的尺寸。选中时其大小会加倍。如果你的选中单元格在宽度或高度上大于集合视图,可能无法正确渲染。
  11. 通过增加或减少StatusFlowView的selectedIndex属性来增加或减少StatusFlowView。建议您只增加或减少此值一次(尽管支持更大的跳跃)。

使用此仓库

在开始之前,您的机器应该具备以下软件: rubyruby gemsbundler

要设置项目,请运行包含的setup.sh。这将安装所需的Gem并执行pod安装。

$ ./setup.sh

要在XCode中打开项目,请运行

$ open StatusFlow.xcworkspace

要从命令行测试项目

$ bundle exec rake

要从命令行构建项目

$ bundle exec rake build

要从命令行清理项目

$ bundle exec rake clean

致谢

感谢Ryan Baumbach对Travis ci提供的帮助。

反馈

有问题、建议、评论或鳄梨酱配方吗? [email protected]