Swift纯代码 UICollectionView 分组显示、Cell圆角、选中变色
- UID
- 1066743
|
Swift纯代码 UICollectionView 分组显示、Cell圆角、选中变色
1.设置Header布局SHomeHeader,继承自UICollectionReusableView。
//
// SHomeHeader.swift
//
// Created by wangjie on 16/5/4.
// Copyright © 2016年 wangjie. All rights reserved.
//
import UIKit
class SHomeHeader: UICollectionReusableView {
var titleLabel:UILabel?//title
override init(frame: CGRect) {
super.init(frame: frame)
initView()
}
func initView(){
titleLabel = UILabel(frame: CGRectMake(0, 0, SCREEN_WIDTH, 30))
titleLabel?.backgroundColor = HEADER_BG_COLOR
self .addSubview(titleLabel!)
}
required init?(coder aDecoder: NSCoder) {
fatalError("init(coder has not been implemented")
}
}
2.为UICollectionReusableView注册header。
//注册header
collectionView!.registerClass(SHomeHeader.classForCoder(), forSupplementaryViewOfKind: UICollectionElementKindSectionHeader, withReuseIdentifier: headerIdentifier)
3.自定义Header并设置宽高。
//设置HeadView的宽高
func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, referenceSizeForHeaderInSection section: Int) -> CGSize{
return CGSize(width: SCREEN_WIDTH, height: headerHeight)
}
//返回自定义HeadView
func collectionView(collectionView: UICollectionView, viewForSupplementaryElementOfKind kind: String, atIndexPath indexPath: NSIndexPath) -> UICollectionReusableView{
var v = SHomeHeader()
if kind == UICollectionElementKindSectionHeader{
v = collectionView.dequeueReusableSupplementaryViewOfKind(kind, withReuseIdentifier: headerIdentifier, forIndexPath: indexPath) as! SHomeHeader
let title:String = headerArr[indexPath.section] as! String
v.titleLabel?.text = title
}
return v
} |
|
|
|
|
|