Swift UICollectionView方法属性详解

ps:仅仅就是总结了下网上所有关于UICollectionView的方法属性,搬来了别人的文章到简书给大家看,用的时候直接拿就好了。憋说话,吻我,我是雷锋~


1.UICollectionView的常用属性

1.设置位置和大小

init ( frame: CGRect, collectionViewLayout layout: UICollectionViewLayout)

2.设置子视图的布局方式

var collectionViewLayout: UICollectionViewLayout

3.设置UICollectionView的代理对象

unowned ( unsafe ) var delegate: UICollectionViewDelegate?

4.设置UICollectionView的数据源对象

unowned ( unsafe ) var dataSource:UICollectionViewDataSource?

5.设置UICollectionView的背景视图

var backgroundView: UIView?

6.设置 UICollectionView 的 Cell 是否可以点击

var allowsSelection: Bool

7.设置 UICollectionView 的 Cell 是否可以多选

var allowsMultipleSelection: Bool

2.UICollectionViewCell显示的样式

struct UICollectionViewScrollPosition : RawOptionSetType {

init ( _ rawValue: UInt )

init ( rawValue: UInt )

1.没有样式

static var None: UICollectionViewScrollPosition { get }

2.垂直居中显示

static var CenteredVertically: UICollectionViewScrollPosition { get }

3.向下显示

static var Bottom: UICollectionViewScrollPosition { get }

4.向左显示

static var Left: UICollectionViewScrollPosition { get }

5.水平居中显示

static var CenteredHorizontally: UICollectionViewScrollPosition { get }

6.向右显示

static varRight: UICollectionViewScrollPosition { get }

}

3.UICollectionView常用的方法

1.设置UICollectionView的注册类, 以及标示符

func registerClass ( cellClass: AnyClass?, forCellWithReuseIdentifier identifier: String )

2.设置 UICollectionView的注册Nib, 以及标示符

func registerNib ( nib: UINib?, forCellWithReuseIdentifier identifier: String )

3.设置 UICollectionView 的注册类, 以及辅助视图名称, 标示符

func registerClass( viewClass: AnyClass?, forSupplementaryViewOfKind elementKind: String, withReuseIdentifier identifier: String )

4.设置 UICollectionView的注册Nib, 以及辅助视图名称, 标示符

func registerNib( nib: UINib?, forSupplementaryViewOfKind kind: String, withReuseIdentifier identifier: String )

5.设置 UICollectionView 可重用的 Cell 以及所以路径

func dequeueReusableCellWithReuseIdentifier( identifier: String, forIndexPath indexPath: NSIndexPath! )-> AnyObject

6.设置 UICollectionView 可重用的的辅视图, 标示符, 以及索引路径

func dequeueReusableSupplementaryViewOfKind ( elementKind: String, withReuseIdentifier identifier: String, forIndexPath indexPath: NSIndexPath! )-> AnyObject

7.选择 Item 的索引路径

func indexPathsForSelectedItems ( ) -> [AnyObject]

8.选择 Item 的索引路径, 以及是否使用动画, 显示样式

func selectItemAtIndexPath ( indexPath: NSIndexPath?, animated: Bool, scrollPosition: UICollectionViewScrollPosition )

9.取消选择 Item 的索引路径, 以及是否使用动画

func deselectItemAtIndexPath(indexPath: NSIndexPath?, animated: Bool)

10.刷新数据

func reloadData()

11.设置 UICollectionView 的集合视图布局, 及是否使用动画

func setCollectionViewLayout(layout: UICollectionViewLayout, animated: Bool)

12.设置 UICollectionView 的集合视图布局, 及是否使用动画, 以及完成之后的闭包方法

func setCollectionViewLayout(layout: UICollectionViewLayout, animated: Bool, completion: ((Bool)-> Void)!)

13.设置 UICollectionView 显示多少个 Item

func numberOfSections()-> Int

14.设置 UICollectionView 显示多少组Item

func numberOfItemsInSection(section: Int)-> Int

15.设置 UICollectionView 滚动到第几个 Item 的索引路径, 以及显示样式和是否启用动画

func scrollToItemAtIndexPath(indexPath: NSIndexPath, atScrollPosition scrollPosition: UICollectionViewScrollPosition, animated: Bool)

16.在 UICollectionView 中插入某个 Item

func insertSections(sections: NSIndexSet)

17.在 UICollectionView 中删除某个 Item

func deleteSections(sections: NSIndexSet)

16.在 UICollectionView 中刷新某个 Item

func reloadSections(sections: NSIndexSet)

17.移动 UICollectionView 中某个 Item 到某个位置

func moveSection(section: Int, toSection newSection: Int)

UICollectionView代理方法

1.点击 Item 时调用的方法

optional func collectionView(collectionView: UICollectionView, didSelectItemAtIndexPath indexPath:NSIndexPath)

2.取消选中 Item 时调用的方法

optional func collectionView(collectionView: UICollectionView, didDeselectItemAtIndexPath indexPath:NSIndexPath)

UICollectionView数据源方法

1.设置UICollectionView有多少个Item   

func collectionView(collectionView: UICollectionView, numberOfItemsInSection section: Int)->Int

2.设置 UICollectionViewCell 所显示的内容, 以及索引路径

func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath)->UICollectionViewCell

3.设置 UICollectionView 有多少组 Cell   

optional func numberOfSectionsInCollectionView(collectionView: UICollectionView)->Int

UICollectionView的集视图布局方法

1.该方法是用来设置 UICollectionView 的 Item 尺寸大小 

optional func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAtIndexPath indexPath: NSIndexPath)->CGSize

2.该方法是用来设置 UICollectionView 的 Item 四周的边界   

optional func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, insetForSectionAtIndex section: Int)->UIEdgeInsets

3.该方法是用来设置 UICollectionView 的 Item 上下之间的最小间距(如果在自定义UICollectionView中实现了该属性, 那么该方法就会覆盖掉原来的属性)   

optional func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumLineSpacingForSectionAtIndex section: Int)->CGFloat

4.该方法是用来设置 UICollectionView 的 Item 左右之间的最小间距(如果在自定义UICollectionView中实现了该属性, 那么该方法就会覆盖掉原来的属性)   

optional func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumInteritemSpacingForSectionAtIndex section: Int)->CGFloat

5.该方法是用来设置 UICollectionView 的页头尺寸(如果在自定义UICollectionView中实现了该属性, 那么该方法就会覆盖掉原来的属性)   

optional func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, referenceSizeForHeaderInSection section: Int)->CGSize

6.该方法是用来设置 UIcollectionView 的页尾尺寸(如果在自定义UICollectionView中实现了该属性, 那么该方法就会覆盖掉原来的属性)   

optional func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, referenceSizeForFooterInSection section: Int)->CGSize


推荐阅读更多精彩内容