У меня есть универсальное приложение, и в версии для iPad я использую UISplitViewController
для создания интерфейса, похожего на приложение Mail.
У меня возникли проблемы с продвижением новых подробных представлений, поэтому я решил использовать, UINavigationController
чтобы я мог просто нажимать и открывать представления по мере необходимости. Однако я не хочу использовать панель навигации или панель инструментов. Но что бы я ни делал, я не могу скрыть панель навигации.
Я попытался снять флажок «Показывает панель навигации» в IB, а также попытался установить:
[self.navigationController setNavigationBarHidden:YES];
в viewDidLoad
/ viewDidAppear
/ viewWillAppear
. Я также пробовал это в каждом из представлений, которые будут отправлены. Ничего не работает.
Что-то мне здесь не хватает? Можно ли иметь UINavigationController
без панели инструментов или панели навигации?
источник
self
является экземпляром?Ответы:
Вы должны уметь делать следующее:
где self.navigationController (очевидно) является экземпляром UINavigationController. Кажется, у меня работает, но я только кратко протестировал его, прежде чем опубликовать это.
источник
- (void)viewWillAppear:(BOOL)animated { self.navigationController.navigationBar.hidden = YES; }
и он работаетЕсли вам не нужна панель навигации, и вы хотите, чтобы содержимое настраивалось до того места, где обычно находится панель навигации, вам следует использовать
Это даст вам такой результат:
В то время как
self.navigationController.navigationBar.hidden = YES;
дает вам пространство, где должна быть панель навигации. Как это:источник
В Xcode 4.3.2:
В категории «Контроллер навигации» есть два флажка:
[] Показывает панель навигации
[] Показывает панель инструментов
Работал у меня ...
источник
Swift 4
Я прячу это на виду,
Затем вы можете вернуть его, когда нажмете переход (если вы хотите, чтобы кнопка возврата была на следующем просмотре)
источник
Swift 3 программно
или
Примечание: я не заметил разницы между этими двумя подходами при тестировании на iOS 10.
источник
Все эти ответы по-прежнему оставляют место наверху для строки состояния - добавьте эту строку, чтобы удалить ее:
источник