兩種iOS隱藏導(dǎo)航欄的正確方法
簡(jiǎn)介
在項(xiàng)目中經(jīng)常碰到首頁(yè)頂部是無限輪播,需要靠最上面顯示.有的設(shè)置導(dǎo)航欄為透明等一系列的方法,這個(gè)可以借助第三方.或者干脆簡(jiǎn)單粗暴的直接隱藏掉導(dǎo)航欄.可是push到下一個(gè)頁(yè)面的時(shí)候是需要導(dǎo)航欄的,如何做了,這里給出兩種方法.
第一種做法
-注意這里一定要用動(dòng)畫的方式隱藏導(dǎo)航欄,這樣在使用滑動(dòng)返回手勢(shì)的時(shí)候效果最好,和上面動(dòng)圖一致.這樣做有一個(gè)缺點(diǎn)就是在切換tabBar的時(shí)候有一個(gè)導(dǎo)航欄向上消失的動(dòng)畫.
- (void)viewWillAppear:(BOOL)animated { [super viewWillAppear:animated]; [self.navigationController setNavigationBarHidden:YES animated:YES]; } - (void)viewWillDisappear:(BOOL)animated { [super viewWillDisappear:animated]; [self.navigationController setNavigationBarHidden:NO animated:YES]; }
第二種做法
設(shè)置self為導(dǎo)航控制器的代理,實(shí)現(xiàn)代理方法,在將要顯示控制器中設(shè)置導(dǎo)航欄隱藏和顯示,使用這種方式不僅完美切合滑動(dòng)返回手勢(shì),同時(shí)也解決了切換tabBar的時(shí)候,導(dǎo)航欄動(dòng)態(tài)隱藏的問題.
@interface WLHomePageController () <UINavigationControllerDelegate> @end @implementation WLHomePageController #pragma mark - lifeCycle - (void)viewDidLoad { [super viewDidLoad]; // 設(shè)置導(dǎo)航控制器的代理為self self.navigationController.delegate = self; } #pragma mark - UINavigationControllerDelegate // 將要顯示控制器 - (void)navigationController:(UINavigationController *)navigationController willShowViewController:(UIViewController *)viewController animated:(BOOL)animated { // 判斷要顯示的控制器是否是自己 BOOL isShowHomePage = [viewController isKindOfClass:[self class]]; [self.navigationController setNavigationBarHidden:isShowHomePage animated:YES]; }
Demo:坐飛機(jī)
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
iOS中3DTouch預(yù)覽導(dǎo)致TableView滑動(dòng)卡頓問題解決的方法
這篇文章主要給大家介紹了關(guān)于iOS中3DTouch預(yù)覽導(dǎo)致TableView滑動(dòng)卡頓問題解決的方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)同樣遇到的朋友們具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起看看吧。2018-03-03iOS開發(fā)中如何實(shí)現(xiàn)一個(gè)平滑的顏色過渡
這篇文章給大家分享在ios開發(fā)中如何從a顏色平滑的過渡到b顏色。代碼簡(jiǎn)單易懂,需要的朋友參考下吧2017-05-05UIScrollView實(shí)現(xiàn)六棱柱圖片瀏覽效果
這篇文章主要為大家介紹了UIScrollView實(shí)現(xiàn)六棱柱圖片瀏覽效果示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-07-07iOS WKWebview 白屏檢測(cè)實(shí)現(xiàn)的示例
這篇文章主要介紹了iOS WKWebview 白屏檢測(cè)實(shí)現(xiàn)的示例,幫助大家更好的進(jìn)行ios開發(fā),感興趣的朋友可以了解下2020-10-10iOS內(nèi)存管理Tagged Pointer使用原理詳解
這篇文章主要為大家介紹了iOS內(nèi)存管理Tagged Pointer使用原理詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-01-01iOS自帶文本轉(zhuǎn)語音技術(shù)(TTS)的實(shí)現(xiàn)即語音播報(bào)的實(shí)踐
這篇文章主要介紹了iOS自帶文本轉(zhuǎn)語音技術(shù)(TTS)的實(shí)現(xiàn)即語音播報(bào)的實(shí)踐,本文介紹的非常詳細(xì),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-09-09實(shí)例解析iOS應(yīng)用多線程開發(fā)中NSthread類的用法
這篇文章主要介紹了iOS應(yīng)用多線程開發(fā)中NSthread類的用法,代碼基于傳統(tǒng)的Objective-C,NSthread類需要的朋友可以參考下2016-02-02