测试已测试 | ✗ |
Lang语言 | Obj-CObjective C |
许可证 | BSD |
发布上次发布 | 2014年12月 |
由 norsez,Nuno Sousa 维护。
数据感知的可视视图控制器,在以行为主的网格布局中显示 UIView 列表(通常是 UIImageView 列表)。此类自动布局 UIView,并通过一个代理类(由您提供)帮助。这个类受到 Nick Lockwood 的漂亮的 iCarousel 类的启发。
这是由此类自动布局相同的 UIView 列表的样本布局。
.h/.m
文件从 Classes
文件夹复制到您的代码库中或者您可以使用 Cocoapods,将以下行添加到您的 Podfile
dependency 'BDDynamicGridViewController'
BDDynamicGridViewController
这是使用 init
初始化的主视图控制器。建议子类化。一旦初始化,设置代理类给它。它接收 BDDynamicGridViewDelegate
类型的代理。见下。
设置代理后。调用 reloadData
来查看布局。每次调用 reloadData
都会创建一个新的布局。
一旦视图加载完毕,用户可以点击每个视图。有两种手势被支持,即长按和双击。这些可以通过以下属性使用 blocks 进行配置: onLongPress
和 onDoubleTap
。每个块调用都提供识别的手势-认识到的 UIView 及其索引,对应于在 -viewAtIndex
方法中的索引。
BDDynamicGridViewDelegate
这是 BDDynamicGridViewController
需要的代理协议。所有方法都必须实现。
-numberOfViews
返回要显示的 UIView 的总计数。-viewAtIndex:
返回指定索引的 UIView。-maximumViewsPerCell
返回每行可包含的 UIView 的最大数量。 BDDynamicGridViewController
使用此方法来确定它最多可以在每行填充多少个 UIView。-rowHeightForRowInfo
BDDynamicGridViewController
调用此方法以设置每行的行高。提供的 rowInfo
包含有用的信息,以便代理决定行高,例如,本行中包含的 UIView 数量等。就是这样!
或者使用 CocoaPods,在 Podfile 中添加以下行
dependency 'BDDynamicGridViewController'
查看 iPhone 演示。阅读评论。如有任何问题,请提问。
BDDynamicGridViewController 受 BSD 许可协议保护。更多信息请参阅 LICENSE 文件。