UICollectionView詳解:(Header/Footer)

與UITableView一樣,UICollectionView的每個Section也可以自定義Header與Footer,本節(jié)講解如何創(chuàng)建自定義的Header與Footer

1库快、創(chuàng)建自定義Header/Footer類

  • 創(chuàng)建一個自定義類探越,繼承自:UICollectionReusableView
  • 定義樣式

2、注冊Header與Footer

  • 分別添加Header與Footer的可重用標(biāo)示符
static NSString * const reuseIdentifierHeader = @"MGHeaderCell";
static NSString * const reuseIdentifierFooter = @"MGFooterCell";
  • 在viewDidLoad方法中注冊Header與Footer
[self.collectionView registerNib:[UINib nibWithNibName:@"MGHeaderView" bundle:nil] forSupplementaryViewOfKind:UICollectionElementKindSectionHeader withReuseIdentifier:reuseIdentifierHeader];
[self.collectionView registerNib:[UINib nibWithNibName:@"MGFooterView" bundle:nil] forSupplementaryViewOfKind:UICollectionElementKindSectionFooter withReuseIdentifier:reuseIdentifierFooter];

3稚虎、實現(xiàn)Header與Footer的數(shù)據(jù)源方法

  • 實現(xiàn)CollectionView的viewForSupplementaryElementOfKind:代理方法侧蘸,并設(shè)置Header裁眯、Footer的一些屬性,如下:
- (UICollectionReusableView *)collectionView:(UICollectionView *)collectionView viewForSupplementaryElementOfKind:(NSString *)kind atIndexPath:(NSIndexPath *)indexPath{
 
 UICollectionReusableView *supplementaryView;
 
 if ([kind isEqualToString:UICollectionElementKindSectionHeader]){
 MGHeaderView *view = (MGHeaderView *)[collectionView dequeueReusableSupplementaryViewOfKind:UICollectionElementKindSectionHeader withReuseIdentifier:reuseIdentifierHeader forIndexPath:indexPath];
 view.headerLabel.text = [NSString stringWithFormat:@"MG這是header:%d",indexPath.section];
 supplementaryView = view;
 
 }
 else if ([kind isEqualToString:UICollectionElementKindSectionFooter]){
 MGFooterView *view = (MGFooterView *)[collectionView dequeueReusableSupplementaryViewOfKind:UICollectionElementKindSectionFooter withReuseIdentifier:reuseIdentifierFooter forIndexPath:indexPath];
 view.footerLabel.text = [NSString stringWithFormat:@"MG這是Footer:%d",indexPath.section];
 supplementaryView = view;
 
 }
 
 return supplementaryView;
}

4讳癌、設(shè)置Header與Footer的大小

  • 實現(xiàn)UICollectionViewDelegateFlowLayout協(xié)議中的referenceSizeForHeaderInSection以及referenceSizeForFooterInSection方法穿稳,設(shè)置Header與Footer的大小
// 設(shè)置Header的尺寸
- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout referenceSizeForHeaderInSection:(NSInteger)section{
 CGFloat screenWidth = [UIScreen mainScreen].bounds.size.width;
 return CGSizeMake(screenWidth, 69);
}
 
// 設(shè)置Footer的尺寸
- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout referenceSizeForFooterInSection:(NSInteger)section{
 CGFloat screenWidth = [UIScreen mainScreen].bounds.size.width;
 return CGSizeMake(screenWidth, 50);
}



  • github

項目 簡介
MGDS_Swif 逗視視頻直播
MGMiaoBo 喵播視頻直播
MGDYZB 斗魚視頻直播
MGDemo n多小功能合集
MGBaisi 高度仿寫百思
MGSinaWeibo 高度仿寫Sina
MGLoveFreshBeen 一款電商App
MGWeChat 小部分實現(xiàn)微信功能
MGTrasitionPractice 自定義轉(zhuǎn)場練習(xí)
DBFMDemo 豆瓣電臺
MGPlayer 一個播放視頻的Demo
MGCollectionView 環(huán)形圖片排布以及花瓣形排布
MGPuBuLiuDemo 瀑布流--商品展
MGSlideViewDemo 一個簡單點的側(cè)滑效果,仿QQ側(cè)滑
MyResume 一個展示自己個人簡歷的Demo
GoodBookDemo 好書
Snip20161026_15.png

Snip20161026_16.png

Snip20161026_35.png
逗視介紹1.gif

逗視介紹2.gif

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末骤菠,一起剝皮案震驚了整個濱河市它改,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌商乎,老刑警劉巖央拖,帶你破解...
    沈念sama閱讀 211,423評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異鹉戚,居然都是意外死亡鲜戒,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,147評論 2 385
  • 文/潘曉璐 我一進(jìn)店門抹凳,熙熙樓的掌柜王于貴愁眉苦臉地迎上來遏餐,“玉大人,你說我怎么就攤上這事〉乓伲” “怎么了匿级?”我有些...
    開封第一講書人閱讀 157,019評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長嗅剖。 經(jīng)常有香客問我,道長嘁扼,這世上最難降的妖魔是什么信粮? 我笑而不...
    開封第一講書人閱讀 56,443評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮趁啸,結(jié)果婚禮上强缘,老公的妹妹穿的比我還像新娘。我一直安慰自己不傅,他們只是感情好旅掂,可當(dāng)我...
    茶點故事閱讀 65,535評論 6 385
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著访娶,像睡著了一般商虐。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,798評論 1 290
  • 那天秘车,我揣著相機與錄音典勇,去河邊找鬼。 笑死叮趴,一個胖子當(dāng)著我的面吹牛割笙,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播眯亦,決...
    沈念sama閱讀 38,941評論 3 407
  • 文/蒼蘭香墨 我猛地睜開眼伤溉,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了妻率?” 一聲冷哼從身側(cè)響起乱顾,我...
    開封第一講書人閱讀 37,704評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎宫静,沒想到半個月后糯耍,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,152評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡囊嘉,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,494評論 2 327
  • 正文 我和宋清朗相戀三年温技,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片扭粱。...
    茶點故事閱讀 38,629評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡舵鳞,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出琢蛤,到底是詐尸還是另有隱情蜓堕,我是刑警寧澤,帶...
    沈念sama閱讀 34,295評論 4 329
  • 正文 年R本政府宣布博其,位于F島的核電站套才,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏慕淡。R本人自食惡果不足惜背伴,卻給世界環(huán)境...
    茶點故事閱讀 39,901評論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望峰髓。 院中可真熱鬧傻寂,春花似錦、人聲如沸携兵。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,742評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽徐紧。三九已至静檬,卻和暖如春炭懊,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背拂檩。 一陣腳步聲響...
    開封第一講書人閱讀 31,978評論 1 266
  • 我被黑心中介騙來泰國打工侮腹, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人广恢。 一個月前我還...
    沈念sama閱讀 46,333評論 2 360
  • 正文 我出身青樓凯旋,卻偏偏與公主長得像呀潭,于是被迫代替她去往敵國和親钉迷。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,499評論 2 348

推薦閱讀更多精彩內(nèi)容