一次全屏顯示的Bug

這題有點老了,原諒我想要記下來。
今天寫代碼遇見了一個奇葩的問題:


原圖.png

提了一個新的需求說要在最上面添加一個提醒的條,最終的效果是這樣的:


屏幕快照 2016-03-24 下午4.50.54.png

于是我開始在原來的xib上面改,很快我就做完了:
屏幕快照 2016-03-24 下午4.23.10.png

我覺得這個功能簡直就是簡單,出來的一定是我想要的效果,結(jié)果:
屏幕快照 2016-03-24 下午4.24.06.png

納尼?。?!我翔黃色的提醒的試圖呢?去哪里了???于是我開始debug,發(fā)現(xiàn)我的提醒試圖被導(dǎo)航條遮住了


debug.png

我搜索了一下才發(fā)現(xiàn),這個是iOS7的新增的屬性。

self.edgesForExtendedLayout = UIRectEdgeNone;

設(shè)置了試圖的全屏顯示的模式為None就可以了。這是為什么呢?因為iOS7全屏顯示導(dǎo)致提醒的View被導(dǎo)航欄遮住了。

那么問題來了,為什么之前沒有設(shè)置的時候底部的tableView可以正常的顯示呢?

iOS7為ScrollView添加了一個屬性

@property(nonatomic,assign) BOOL automaticallyAdjustsScrollViewInsets NS_AVAILABLE_IOS(7_0); // Defaults to YES

官方的解釋是這個:

A Boolean value that indicates whether the view controller should automatically adjust its scroll view insets.

這個屬性決定了ViewController是否自動的去設(shè)置ScrollView的insets去顯示ScrollView,默認為YES這就解釋了之前的問題。因為ViewController自動的去設(shè)置了tableView的insets使tableView得以正常的顯示。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 發(fā)現(xiàn) 關(guān)注 消息 iOS 第三方庫、插件、知名博客總結(jié) 作者大灰狼的小綿羊哥哥關(guān)注 2017.06.26 09:4...
    肇東周閱讀 15,052評論 4 61
  • 自用收藏 原文:http://www.th7.cn/Program/IOS/201606/884245.shtml...
    西瓜皮奧特曼閱讀 2,345評論 0 16
  • 你,什么時候出現(xiàn)在我的生命里,我已記不清了,但我想,遇見你的那天,天氣一定特別好。 我從未想過,有一天,我會喜歡上...
    嶼上嶼閱讀 243評論 0 2
  • 一、活動目的; 1、為增進同事的感情,提高大家的綜合能力,以便于以后彼此間合作; 2、放松小伙伴們的心情,娛樂及豐...
    司馬子瀟瀟閱讀 146評論 0 0
  • OSI 七層模型指什么 ?OSI(Open System Interconnect),即開放式系統(tǒng)互聯(lián);每一層實現(xiàn)...
    大淀桑浮不起來閱讀 468評論 0 0

友情鏈接更多精彩內(nèi)容