我正在使用XCode5和iOS7。 是否可以将UICollectionView嵌入到普通的UIViewController类中并让UIViewController实现这些方法?
或者我需要UICollectionViewController吗?
至少需要哪些方法?
答案 0 :(得分:3)
是的,可以在没有UICollectionViewController的情况下实现UICollectionView。 CollectionViews就像tableView。
您可能已经知道,当您使用UITableView时,您必须设置数据源和委托,以便提供显示和处理事件的数据(如行选择)。
同样,当您使用UICollectionView时,您还必须设置数据源和委托。
他们的作用如下:
1.数据源(UICollectionViewDataSource)返回有关集合视图中项目数及其视图的信息。
2.发生事件时会通知代表(UICollectionViewDelegate),例如选择,突出显示或删除单元格。
UICollectionView的新手,您必须实现第三个协议 - 一个特定于布局管理器的协议,用于集合视图。
答案 1 :(得分:1)
您可以使用UICollectionView,您需要UICollectionView以符合UICollectionViewDelegate和UICollectionViewDataSource协议。
因此您至少需要;
numberOfSectionsInCollectionView,numberOfItemsInSection,您需要实现cellForItemAtIndexPath来创建单元格。显然你还需要定义Cell
答案 2 :(得分:0)
您不需要UICollectionViewController。请确保您的ViewController实现UICollectionViewDelegate
和UICollectionViewDataSource
。
此示例可以帮助您使用UICollectionView主题: http://adoptioncurve.net/archives/2012/09/a-simple-uicollectionview-tutorial/
答案 3 :(得分:0)
答案是否定的。 UICollectionView 是 UIVIew 的子类,可以添加到您希望的任何视图中。 由于 UIVIewController 具有视图属性,您可以使用以下方法向其添加 UICollectionView :
[self.view addSubview:self.collectionView];
这是一个很棒的示例项目教程,您可以在其中看到如何在自定义 UIViewController 子类中实现 UICollectionView : http://www.raywenderlich.com/22324/beginning-uicollectionview-in-ios-6-part-12