Bitte helfen Sie mir, Navigation Controller in der Root-Ansicht zu verstecken. Ich habe die Lösung gefunden, [navigationController setNavigationBarHidden:YES]
in jedem View-Controller zu schreiben, den ich brauche. Nun, es funktioniert aber nur zum ersten Mal: Ich starte die Anwendung, in der Stammansicht habe ich keine Navigation, dann gehe ich zur zweiten Ansicht - die Navigation erscheint, OK. Aber dann drücke ich "Zurück" in Navigation Controller, und die Navigation von der Root-Ansicht ist nicht verschwunden. Ich arbeite mit Xib.So verbergen Sie den Navigationscontroller in der Stammansicht?
Antwort
In RootViewController
-(void)viewWillAppear:(BOOL)animated
{
[self.navigationController setNavigationBarHidden:YES animated:NO];
}
Auf dem zweiten Blick (neben RootViewController)
-(void)viewDidLoad:(BOOL)animated
{
[self.navigationController setNavigationBarHidden:NO animated:NO];
}
dies ausprobieren
Verwenden Sie diese Zeile Code auf allen View-Controller
[navigationController setNavigationBarHidden: YES animated:YES];
Wenn keine Animation benötigt wird, um Sie tun können, animiert: NEIN und diesen Code in viewDidLoad hinzuzufügen, oder es viewWillAppear setzen oder viewDidAppear.
In Ihrem Fall
[navigationController setNavigationBarHidden:YES animated:NO];
auf RootViewController, und
[navigationController setNavigationBarHidden:NO animated:YES];
auf Ihren anderen Viewcontrollers
ausblenden Navigationsleiste alle Ansicht des View-Controller-Methode angezeigt.
-(void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
[navigationCOntroller setNavigationBarHidden:YES animated:animated];
}
Ich glaube, Sie Tab-Leiste Controller verwenden.
Ihr Code funktioniert für die erste Ansicht Controller, wie Sie nur Code dort haben. Für den Second-View-Controller wird die Standardeinstellung übernommen, und daher wird für den Second-View-Controller die Navigationsleiste angezeigt.
Zur Navigationsleiste für alle View-Controller zu verbergen, versteckten Code in allen View-Controller setzen ViewWillAppear
-(void)viewWillAppear:(BOOL)animated
{
[self.navigationController setNavigationBarHidden:YES animated:NO];
}
sieht so aus, als hätte es am längsten gedauert, das zu schreiben :) – Jaro
Thank you! Deine Antwort funktioniert. Vielen Dank für die Antworten. –