Frage

Ich habe gelesen in der Apple-Dokumentation über die UINavigationController-die Größenänderung Verhalten, und es hat nicht viel von einem problem, bis jetzt.

Ich habe den folgenden code, um meine UINavigationController Ansicht:

navController.view.frame = CGRectMake(0, 40, 320, 420);

und dies ist ausreichend, bis die Sicht ist verdeckt durch eine modale Ansicht, an welcher Stelle wird die Ansicht verkleinert, um die Standard Größe irgendwo zwischen den aufrufen von viewWillAppear und viewDidAppear (als UINavigationController erbt von UIViewController).

Ich bin versucht zu halten ein banner sichtbar über dem UINavigationController (in 40 von 320 Speicherplatz verfügbar ist), aber dieses banner wird konsequent verschleiert, wie oben beschrieben.

Gibt es eine Möglichkeit, surpress UINavigationController die Größenänderung Verhalten ohne Unterklassen von UIViewController mich?

War es hilfreich?

Lösung

Im interface builder können Sie deaktivieren Sie die automatische Größenanpassung aktivieren.

In code, es ist

[myNavController.view setAutoresizesSubviews: NO];

Andere Tipps

Ich würde versuchen

myNavController.superview.autoresizesSubviews = NO

und offensichtlich check myNavController.autoresizingMask

Als letzten Ausweg, Unterklasse seine superview und implementieren layoutSubviews

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top