Mam uniwersalną aplikację iw wersji na iPada używam UISplitViewController
do tworzenia interfejsu podobnego do aplikacji Mail.
Miałem problem z wypchnięciem nowych widoków szczegółów, więc zdecydowałem się użyć, UINavigationController
aby móc po prostu wypychać i wyświetlać widoki w razie potrzeby. Jednak nie chcę używać widoku nawigacji ani paska narzędzi. Ale bez względu na to, co robię, nie mogę ukryć paska nawigacji.
Próbowałem usunąć zaznaczenie opcji „Pokazuje pasek nawigacji” w IB, a także próbowałem ustawić:
[self.navigationController setNavigationBarHidden:YES];
w viewDidLoad
/ viewDidAppear
/ viewWillAppear
. Próbowałem też tego w każdym z widoków, które będą forsowane. Nic nie działa.
Czy jest coś, czego tu brakuje? Czy można mieć UINavigationController
bez paska narzędzi lub paska nawigacji?
ios
uinavigationcontroller
DOOManiac
źródło
źródło
self
jest instancją?Odpowiedzi:
Powinieneś być w stanie wykonać następujące czynności:
gdzie self.navigationController jest (oczywiście) instancją klasy UINavigationController. Wydaje się, że działa dla mnie, ale przed opublikowaniem tego przetestowałem tylko krótko.
źródło
- (void)viewWillAppear:(BOOL)animated { self.navigationController.navigationBar.hidden = YES; }
i działaJeśli nie chcesz mieć paska nawigacyjnego i chcesz, aby zawartość była dostosowana do miejsca, w którym normalnie byłby pasek nawigacji, powinieneś użyć
Daje to następujący wynik:
Natomiast
self.navigationController.navigationBar.hidden = YES;
daje miejsce, w którym powinien znajdować się pasek nawigacji. Lubię to:źródło
W Xcode 4.3.2:
W kategorii Kontroler nawigacji znajdują się dwa pola wyboru:
[] Wyświetla pasek nawigacji
[] Wyświetla pasek narzędzi
Pracował dla mnie ...
źródło
Szybki 4
Ukrywam to na widoku
Następnie możesz go odłożyć, gdy popchniesz segue (jeśli chcesz mieć przycisk Wstecz w następnym widoku)
źródło
Swift 3 programowo
lub
Uwaga: nie widziałem różnicy między tymi dwoma podejściami do testowania na iOS 10.
źródło
Wszystkie te odpowiedzi nadal pozostawiają u góry miejsce na pasek stanu - dodaj tę linię, aby również ją usunąć:
źródło