Navigationsleiste mit flüssiger Animation ein- / ausblenden

Ich habe eine navigationsbasierte App. Die erste Ansicht (rootcontroller) beginnt nur mit drei großen Schaltflächen. Keine Navigationsleiste. Von dort ist alles andere Tabellenansichten und Navigationsleisten. Ich mache das, um die Navigationsleiste ein- / auszublenden:

MyAppAppDelegate *appDelegate = [[UIApplication sharedApplication] delegate];
appDelegate.navigationController.navigationBar.hidden = NO;

Sobald ich den Root-Controller verlasse, rastet die Navigationsleiste ein und legt sich auf die Tabellenansicht, anstatt sie nach unten zu drücken. Es schneidet den oberen Teil der Tabellenansicht ab. Das Zurückkehren zum Root-Controller ist nicht reibungslos, da die Navigationsleiste nicht mehr angezeigt wird. Gibt es eine bessere Möglichkeit, die Navigationsleiste nur für den Root-Controller auszublenden?

Antworten auf die Frage(3)

Ihre Antwort auf die Frage