| 测试已测试 | ✗ |
| 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 文件。