簡體   English   中英

如何在iOS中禁用導航欄

[英]How to disable navigation bar in iOS

我想在添加子視圖時禁用導航欄,並在刪除子視圖后再次啟用它。 怎么做。 顯示操作表時的類似操作。

在Swift中:

self.navigationController?.setNavigationBarHidden(true, animated: true)

使用(Objective-C):

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

請注意,如果您想避免以這種方式再次啟用它們,則可能必須跟蹤最初禁用的按鈕。

我還沒有檢查是否包含后退按鈕。 我猜它沒有,所以如果需要你也必須考慮到這一點。

NSArray* allBarButtons = [self.navigationController.navigationBar.topItem.leftBarButtonItems arrayByAddingObjectsFromArray:self.navigationController.navigationBar.topItem.rightBarButtonItems];
for (UIBarButtonItem* barButton in allBarButtons) {
     barButton.enabled = NO;
}

Swift 4中 ,將下面的代碼放在ViewController的viewDidLoad()中。

self.navigationController?.isNavigationBarHidden = true
self.navigationController.navigationBar.topItem.leftBarButtonItem.enabled = NO;
self.navigationController.navigationBar.topItem.rightBarButtonItem.enabled = NO;
self.navigationController.navigationBar.topItem.backBarButtonItem.enabled = NO;

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM