带有部分的iOS GridView

我想实现我自己的GridView类似于KKGridView。

我的gridview有额外的复杂性,因为它需要支持在每个部分中有不同数量的项目/单元格的多个部分。 (见下文)

在这里输入图像说明

它还需要能够处理从第1节到第0节以及第0节到第1节的一个单元格。

我写了UIView显示网格,但不支持从一个部分移动到另一个部分。 问题是任何人都有一个支持此function的GridView,或者可以告诉我最好的方式,因为这个GridView需要在iOS 5和iOS 6中支持

我会尝试使用UICollectionView ,与UICollectionViewFlowLayoutPSTCollectionView兼容的iOS5的组合。

  • 看看UICollectionViewDelegateFlowLayout文档,我想你会find你需要的一切,以build立一个按部门自定义布局,你需要的。
  • PSTCollectionView是一个“开放源代码,与iOS4.3 + UICollectionView 100%API兼容的替代品”。 此外,您可以在UICollectionView上使用UICollectionView ,并且只能使用iOS5设备上的PSTCollectionView 。 看一下GitHub项目页面 。

我在其中一个正在使用的应用程序中使用这种方法,实现起来非常简单。

编辑:你会采取什么步骤,你想要的将大致如下:

  • 您需要下载包含项目中的PSTCollectionView 。 为此,请按照GitHub页面上的步骤进行操作。
  • .h文件中,导入PSTCollectionView.h并添加以下两个协议: <PSUICollectionViewDataSource, PSUICollectionViewDelegate> 。 请注意,使用UICollectionView Apple UICollectionView和iOS5的PSTCollectionView 。 在这里你还应该为你的集合视图添加一个属性: @property (nonatomic, strong) PSUICollectionView *collectionView;
  • viewDidLoad:方法中,你需要有这样的东西:

码:

 PSUICollectionViewFlowLayout *flowLayout = [[PSUICollectionViewFlowLayout alloc] init]; [flowLayout setScrollDirection:UICollectionViewScrollDirectionVertical]; [flowLayout setItemSize:CGSizeMake(91, 119)]; [flowLayout setMinimumLineSpacing:0]; self.collectionView.dataSource = self; self.collectionView.delegate = self; 
  • 而且你需要实现你喜欢的以下方法:

方法:

 numberOfSectionsInCollectionView: collectionView:numberOfItemsInSection: collectionView:cellForItemAtIndexPath: collectionView:layout:insetForSectionAtIndex: collectionView:layout:minimumLineSpacingForSectionAtIndex: collectionView:layout:minimumInteritemSpacingForSectionAtIndex: 

重要提示:不要忘记用PS为每个提到的UICollectionView类添加前缀。 例如PSUICollectionViewPSUICollectionViewLayout

编辑2:对于UICollectionView的一般理解参考这个优秀的教程 。

您可以使用自定义单元格来实现此function。 一个单元有10个子视图,第二个有6个子视图。 它会为你工作。

您可以通过标签(1-6和1-10)获得单元格中的视图

尝试这个