2

WWDC 的一些人告诉我,UICollectionView 非常适合在 iOS 中创建 EPG(电子节目指南)样式视图,如下图所示。但是,我找不到任何接近这个的样本......有人知道吗?

在此处输入图像描述

4

6 回答 6

1

这是使用 UICollectionView 和自定义 UICollectionViewLayout https://github.com/CoderXpert/EPGGrid ...快速创建 EPG 网格的示例。

于 2015-02-14T22:24:55.740 回答
1

在很多情况下,您可以通过子UICollectionViewFlowLayout类化来完成它。但在这种情况下,您必须编写自己的布局。因为UICollectionViewFlowLayout适用于基于行的布局,其中行在末尾断开。但在这种情况下,这是行不通的。

所以自定义布局是要走的路。您可能想查看有关自定义布局和 Apple 文档的 WWDC 会议。

于 2012-10-11T14:10:18.057 回答
0

好吧,看起来很简单,您只需要 CollectionView 中的一个部分和每个项目的高度相同。要使项目的长度动态化,您只需要这个 api,您可以在其中计算空间并返回适当的大小。

- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath

这是 UICollectionViewDelegateFlowLayout 协议方法之一。确保您的水平滚动已启用集合视图,您可以从情节提要中设置它。

于 2012-10-19T08:29:39.580 回答
0

https://github.com/NOUSguide/NGVaryingGridView 一个允许为单元设置单个矩形的 GridView。因此,您可以定义具有不同大小的单元格,例如用于时间表、EPG 等。

于 2013-07-15T09:43:56.047 回答
0

我有同样的问题 - 我不确定,但我认为你(我们)将不得不子类化

UICollectionViewFlowLayout

为了实现这种布局:P

于 2012-10-03T09:26:05.517 回答
0

https://github.com/inspace-io/INSElectronicProgramGuideLayout UICollectionViewLayout 用于显示对您有帮助的电子节目指南。

于 2014-12-19T12:35:19.587 回答