關(guān)于tableView的headerView滑動(dòng)問題

昨天在項(xiàng)目中遇到一個(gè)關(guān)于tableView的headerView不能隨著cell一起滾動(dòng),必須要下一組headerView才能頂上去的問題.

百度上也有很多人遇到這個(gè)問題 解決的方式大部分都是監(jiān)聽滾動(dòng):?

-(void)scrollViewDidScroll:(UIScrollView *)scrollView{

CGFloat sectionHeaderHeight = 50;

if (scrollView.contentOffset.y <= sectionHeaderHeight && scrollView.contentOffset.y> 0) {

scrollView.contentInset = UIEdgeInsetsMake(-scrollView.contentOffset.y, 0, 0, 0);

}else

if(scrollView.contentOffset.y >= sectionHeaderHeight){

? ? ? scrollView.contentInset = UIEdgeInsetsMake(-sectionHeaderHeight, 0, 0, 0);

? ? ?}

}

這個(gè)方法我也測(cè)試了下有BUG 滾動(dòng)的時(shí)候不流暢headerView會(huì)閃一下并且如果你的tableview的cell鋪不滿整個(gè)屏幕的時(shí)候有彈簧效果的時(shí)候滑上去之后就下不來了,苦惱很久突然想到以前也寫過一個(gè)這種分組的tableView,記得不會(huì)出現(xiàn)這個(gè)問題的,代碼是這樣寫的:

self.switchTableView = [[UITableView alloc]initWithFrame:self.view.frame style:UITableViewStyleGrouped];

[self.view addSubview:self.switchTableView];


現(xiàn)在的項(xiàng)目是用masonry寫約束的所以創(chuàng)建tableView的時(shí)候沒有用到initWithFrame: style:這個(gè)方法:

self.memberTableView = [[UITableView alloc]init];

但是用initWithFrame: style:這個(gè)創(chuàng)建方法必須要傳個(gè)frame怎么辦?其實(shí)很簡(jiǎn)單傳個(gè)CGRectZero就好了 代碼如下:

self.memberTableView = [[UITableView alloc]initWithFrame:CGRectZero style:UITableViewStyleGrouped];

[self.view addSubview:self.memberTableView];

[self.memberTableView mas_makeConstraints:^(MASConstraintMaker *make) {

? ? ? make.edges.mas_equalTo(self.view);

}];


但是這個(gè)方法會(huì)在每一組的頭部加上一個(gè)空白組頭部和底部所以必須再實(shí)現(xiàn)一個(gè)方法

self.memberTableView.tableHeaderView = [[UIView alloc]initWithFrame:CGRectMake(0, 0, CGFLOAT_MIN, CGFLOAT_MIN)];

self.memberTableView.tableFooterView = [[UIView alloc]initWithFrame:CGRectMake(0, 0, CGFLOAT_MIN, CGFLOAT_MIN)];

同時(shí)這個(gè)方法也會(huì)當(dāng)tableView占不滿一屏?xí)r,去除下邊多余的單元格

如果你的tableview沒有footView的時(shí)候最好把高度寫成0.001.

- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section{

return 0.001;

}

所以只要確定創(chuàng)建的tableView的樣式是UITableViewStyleGrouped 然后將footView的時(shí)候最好把高度寫成0.001 tableHeaderView,tableFooterView改成最小 ? headerView滑動(dòng)的時(shí)候就不會(huì)卡在頂部了.

希望下次有遇到跟我一樣的問題的人,少走點(diǎn)彎路.

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市拴测,隨后出現(xiàn)的幾起案子丙躏,更是在濱河造成了極大的恐慌哲嘲,老刑警劉巖嫌变,帶你破解...
    沈念sama閱讀 221,406評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件响禽,死亡現(xiàn)場(chǎng)離奇詭異俩滥,居然都是意外死亡嘉蕾,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,395評(píng)論 3 398
  • 文/潘曉璐 我一進(jìn)店門霜旧,熙熙樓的掌柜王于貴愁眉苦臉地迎上來错忱,“玉大人,你說我怎么就攤上這事挂据∫郧澹” “怎么了?”我有些...
    開封第一講書人閱讀 167,815評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵崎逃,是天一觀的道長(zhǎng)掷倔。 經(jīng)常有香客問我,道長(zhǎng)个绍,這世上最難降的妖魔是什么勒葱? 我笑而不...
    開封第一講書人閱讀 59,537評(píng)論 1 296
  • 正文 為了忘掉前任浪汪,我火速辦了婚禮,結(jié)果婚禮上凛虽,老公的妹妹穿的比我還像新娘死遭。我一直安慰自己,他們只是感情好涩维,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,536評(píng)論 6 397
  • 文/花漫 我一把揭開白布殃姓。 她就那樣靜靜地躺著,像睡著了一般瓦阐。 火紅的嫁衣襯著肌膚如雪蜗侈。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,184評(píng)論 1 308
  • 那天睡蟋,我揣著相機(jī)與錄音踏幻,去河邊找鬼。 笑死戳杀,一個(gè)胖子當(dāng)著我的面吹牛该面,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播信卡,決...
    沈念sama閱讀 40,776評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼隔缀,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了傍菇?” 一聲冷哼從身側(cè)響起猾瘸,我...
    開封第一講書人閱讀 39,668評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎丢习,沒想到半個(gè)月后牵触,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,212評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡咐低,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,299評(píng)論 3 340
  • 正文 我和宋清朗相戀三年揽思,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片见擦。...
    茶點(diǎn)故事閱讀 40,438評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡钉汗,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出鲤屡,到底是詐尸還是另有隱情儡湾,我是刑警寧澤,帶...
    沈念sama閱讀 36,128評(píng)論 5 349
  • 正文 年R本政府宣布执俩,位于F島的核電站,受9級(jí)特大地震影響癌刽,放射性物質(zhì)發(fā)生泄漏役首。R本人自食惡果不足惜尝丐,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,807評(píng)論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望衡奥。 院中可真熱鬧爹袁,春花似錦、人聲如沸矮固。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,279評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)档址。三九已至盹兢,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間守伸,已是汗流浹背绎秒。 一陣腳步聲響...
    開封第一講書人閱讀 33,395評(píng)論 1 272
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留尼摹,地道東北人见芹。 一個(gè)月前我還...
    沈念sama閱讀 48,827評(píng)論 3 376
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像蠢涝,于是被迫代替她去往敵國(guó)和親玄呛。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,446評(píng)論 2 359

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