4

我想在添加子视图时禁用导航栏,并在删除子视图后再次启用它。怎么做。显示操作表时的类似操作。

4

6 回答 6

2

在斯威夫特:

self.navigationController?.setNavigationBarHidden(true, animated: true)
于 2014-11-24T20:17:28.290 回答
1

用途(目标-C):

[self.navigationController setNavigationBarHidden:YES animated:YES];
于 2014-02-27T10:36:10.507 回答
1

请注意,如果您想避免以这种方式再次启用它们,您可能必须跟踪最初禁用的按钮。

我也没有检查这是否包括后退按钮。我猜它没有,所以如果需要,你也必须考虑到这一点。

NSArray* allBarButtons = [self.navigationController.navigationBar.topItem.leftBarButtonItems arrayByAddingObjectsFromArray:self.navigationController.navigationBar.topItem.rightBarButtonItems];
for (UIBarButtonItem* barButton in allBarButtons) {
     barButton.enabled = NO;
}
于 2017-09-13T21:14:21.510 回答
1

Swift 4中,将下面的代码放在viewDidLoad()ViewController 中。

self.navigationController?.isNavigationBarHidden = true
于 2018-05-23T21:51:51.040 回答
0
self.navigationController.navigationBar.topItem.leftBarButtonItem.enabled = NO;
self.navigationController.navigationBar.topItem.rightBarButtonItem.enabled = NO;
self.navigationController.navigationBar.topItem.backBarButtonItem.enabled = NO;
于 2014-09-11T15:28:09.220 回答
0

[[self navigationController] setNavigationBarHidden:YES 动画:YES];

于 2016-09-10T07:50:57.887 回答