ios11以下系統(tǒng)導(dǎo)航條丟失的問(wèn)題

一、這篇文章解決的問(wèn)題是

ios11系統(tǒng)以下,從一個(gè)需要隱藏導(dǎo)航條的視圖跳轉(zhuǎn)另一個(gè)不需要隱藏導(dǎo)航條的視圖中,假如前一個(gè)視圖需要更換狀態(tài)欄樣式,這個(gè)時(shí)候用以下代碼會(huì)導(dǎo)致使用導(dǎo)航條手勢(shì)去來(lái)回切換視圖,導(dǎo)致導(dǎo)航條丟失。

1.第一個(gè)視圖的設(shè)置導(dǎo)航條隱藏

- (void)viewWillAppear:(BOOL)animated {
    [super viewWillAppear:animated];
    [self.navigationController setNavigationBarHidden:YES animated:animated];
}

且通過(guò)以下方法更換狀態(tài)欄樣式

- (UIStatusBarStyle)preferredStatusBarStyle {
    return UIStatusBarStyleLightContent;
}

2.第二個(gè)視圖設(shè)置導(dǎo)航條不隱藏

- (void)viewWillAppear:(BOOL)animated {
    [super viewWillAppear:animated];
    [self.navigationController setNavigationBarHidden:NO animated:animated];
}

這個(gè)時(shí)候如果使用導(dǎo)航條手勢(shì)來(lái)回切換視圖,會(huì)出現(xiàn)導(dǎo)航丟失的情況,如下圖(圖片有點(diǎn)大,稍稍的等一下吧)


image

二、解決方法如下:

1.將隱藏導(dǎo)航條的方法改為

[self.navigationController setNavigationBarHidden:YES animated: NO];

導(dǎo)航條不丟失了,但是交互效果很不友好。

2.在info.plist設(shè)置View controller-based status bar appearance為NO,使用下面的代碼更改狀態(tài)欄

[UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleLightContent;

可以解決這個(gè)問(wèn)題,推測(cè)是ios11以下的系統(tǒng)對(duì)于導(dǎo)航條和狀態(tài)欄的交互處理有問(wèn)題。

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

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

  • 佛家里有一個(gè)字很玄妙,叫做“緣”。 緣聚緣散,不必強(qiáng)求。 然而很多人的悲劇卻起源于不甘心,非要與那些本與自己無(wú)緣的...
    一致的傻傻閱讀 131評(píng)論 0 0
  • 朋友圈應(yīng)不應(yīng)該屏蔽父母,答案當(dāng)然要屏蔽。 首先,看看”朋友圈“這三個(gè)字,屬于朋友的圈子。朋友圈的本意是讓我們的朋友...
    蘇銀淋閱讀 371評(píng)論 1 1
  • 我經(jīng)常在面試中詢(xún)問(wèn)能否查閱公司曾經(jīng)做過(guò)的用研報(bào)告,因?yàn)槲铱傆X(jué)得從一篇報(bào)告中能夠?qū)W習(xí)到很多東西:整體的研究思路、研究...
    IvanMu閱讀 1,382評(píng)論 3 6

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