中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

兩種iOS隱藏導航欄的正確方法

發布時間:2020-10-16 14:34:29 來源:腳本之家 閱讀:433 作者:倚樓聽風雨wing 欄目:移動開發

簡介

在項目中經常碰到首頁頂部是無限輪播,需要靠最上面顯示.有的設置導航欄為透明等一系列的方法,這個可以借助第三方.或者干脆簡單粗暴的直接隱藏掉導航欄.可是push到下一個頁面的時候是需要導航欄的,如何做了,這里給出兩種方法.

兩種iOS隱藏導航欄的正確方法

第一種做法

-注意這里一定要用動畫的方式隱藏導航欄,這樣在使用滑動返回手勢的時候效果最好,和上面動圖一致.這樣做有一個缺點就是在切換tabBar的時候有一個導航欄向上消失的動畫.

- (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];
}


第二種做法

設置self為導航控制器的代理,實現代理方法,在將要顯示控制器中設置導航欄隱藏和顯示,使用這種方式不僅完美切合滑動返回手勢,同時也解決了切換tabBar的時候,導航欄動態隱藏的問題.

@interface WLHomePageController () <UINavigationControllerDelegate>

@end

@implementation WLHomePageController

#pragma mark - lifeCycle
- (void)viewDidLoad {
 [super viewDidLoad];

 // 設置導航控制器的代理為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:坐飛機

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

新余市| 临汾市| 乌兰察布市| 呼和浩特市| 应用必备| 溧水县| 电白县| 韩城市| 岢岚县| 项城市| 长顺县| 潞城市| 武夷山市| 板桥市| 达拉特旗| 鄂伦春自治旗| 克拉玛依市| 平谷区| 金平| 临颍县| 柳州市| 资兴市| 安阳市| 金溪县| 苗栗县| 修水县| 商丘市| 县级市| 从化市| 噶尔县| 南丰县| 栾川县| 齐河县| 满洲里市| 潜山县| 苍山县| 长汀县| 阿拉善右旗| 龙井市| 郧西县| 汤原县|