Fügen Sie Layouteinschränkungen programmgesteuert in UINavigationBar hinzu

9

Ich habe einen UIViewController, der eine Ansicht mit einer UINavigationBar anzeigt. Diese UINavigationBar wird automatisch wie in einem UINavigationController erstellt.

Ich möchte eine zweite UINavigationBar über dem ersten für einen bestimmten Modus anzeigen, mit einer Übersetzungsanimation von oben.

Ich habe herausgefunden, dass es einfacher war, wenn die UINavigationBar automatisch erstellt wurde, die zweite UINavigationBar in der ersten mit einem einfachen hinzuzufügen:

%Vor%

Ich versuche jetzt eine "y" -Bedingung hinzuzufügen, um die zweiteNavigationsleiste zu übersetzen:

%Vor%

Dann,

%Vor%

sagt mir

  

Einschränkungen für UINavigationBar, die von a verwaltet werden, können nicht geändert werden   Controller

und

%Vor%

sagt mir

  

Die Ansichtshierarchie ist nicht für die Einschränkung vorbereitet

Ich bin nicht vertraut mit Auto-Layouts Einschränkungen ... Ihre Hilfe wäre wirklich dankbar :) Danke!

    
Nicolas Roy 17.03.2014, 09:57
quelle

1 Antwort

-4

Anstatt Constraints zu verwenden, könnten Sie versuchen, den Frame wie folgt manuell festzulegen:

self.navigationController.navigationBar.frame = CGRectMake(0, 44, screenWidth, screenHeight)

würde die navBar 44 Pixel von oben nach unten setzen, so dass ein weiterer Balken eingefügt werden kann

    
Austin 20.07.2014 07:29
quelle