Problem z UINavigationBar / Status Bar w IOS7
(Zamiast zbyt długiego pytania z edycjami dokonującymi końcowej edycji w celu wyjaśnienia, zobacz inne edycje, jeśli to konieczne).
Ustawienia kontroleraMam aplikację skonfigurowaną w następujący sposób:
InitialViewController (podklasa zECSlidingViewController)
Główny kontroler nawigacji (podklasaUINavigationController
)
Główny kontroler widoku głównego (podklasaUIViewController
)
wviewDidLoad
kontrolera initialViewController Ładuję główny kontroler nawigacji za pomocą kontrolera Home View jako root.
self.topViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"MainNavVC"];
ProblemPrzy pierwszym ładowaniu aplikacji pasek stanu i pasek nawigacyjny są rozdzielone.
To jest pożądany efekt.
Następnie ładuję kontroler widoku modalnego i zamykam go, używając standardowych metod:
[self performSegueWithIdentifier:@"LoadSelectOpponentVC" sender:self];
Następnie zamknij:
[self dismissViewControllerAnimated:YES completion:nil];
To z kolei powoduje, że główny kontroler nawigacji (trzymając kontroler widoku domowego) wyświetla pasek stanu nieprawidłowo i nakłada się:
TestowanieUstawienie plist jest ustawione na TAK -View controller-based status bar appearance
Próbowałem ustawićedgesForExtendedLayout
do odpowiedniego żadnego, ale bez zmian.Wycięcie lasuPróbowałem wylogować się z niektórych ramek, aby zobaczyć, gdzie występuje problem:
Przy pierwszym załadowaniu:
Główna nawigacja VC - widok ramki - {{0, 0}, {320, 480}}
Main Nav VC - Nav Bar Frame - {{0, 0}, {320, 44}}
Initial VC - View Frame - {{0, 0}, {320, 480}}
Home VC - View Frame - {{0, 0}, {320, 480}} -- viewDidLoad Home VC
Home VC - View Frame - {{0, 64}, {320, 416}} -- viewWillAppear Home VC
--- After Modal is opened/closed ----
Home VC - View Frame - {{0, 64}, {320, 416}} -- viewWillAppear Home VC
Main Nav VC - View Frame - {{0, 0}, {320, 480}} -- viewWillAppear Main Nav
Main Nav VC - Nav Bar Frame - {{0, 20}, {320, 44}} -- viewWillAppear Main Nav
Home VC - View Frame - {{0, 44}, {320, 436}} -- viewDidAppear Home VC