2016-03-20 17 views
1

Ich versuche, UINavigationBar von Interface Builder (nicht storyBoard) hinzufügen.UINavigationBar ohne UINavigationController von Interface Builder

aber bleibt die Höhe als 44.

Es gibt einen Beitrag, das eine Antwort hat, aber das ist durch den Code. UINavigationBar without UINavigationController

Ich habe das gleiche, aber von Interface Builder aber nicht funktioniert. Interface Builder und Simulator Screenshots sind mit dieser Email angehängt. Außerdem habe ich die folgende Methode im Controller hinzugefügt.

Also, ist es möglich, von Interface Builder?

- (UIBarPosition)positionForBar:(id<UIBarPositioning>)bar 
{ 
    return UIBarPositionTopAttached; 
} 

enter image description here

enter image description here

Antwort

1

Obwohl es kontraintuitiv sein kann, müssen Sie mit dem Wert von 20 von der Spitze der Ansicht, eine Einschränkung haben (Die Einschränkung sollte Top Raum sagen zu: Top Layout Guide). Am Ende sollte es in Interface Builder so aussehen, aber während der Laufzeit fügt die Navigationsleiste 20 Punkte (oder Pixel, die ich nicht sicher bin) nach oben hinzu, so dass sie sich bis zum oberen Bildschirmrand erstreckt.

UINavigationBar in Interface Builder

+0

Ich denke, die nur im Storyboard. – andyPaul

+0

@andyPaul Wenn Sie eine Feder verwenden, bewegen Sie einfach die Navigationsleiste um 20 Pixel nach unten und aktualisieren Sie die Beschränkungen für die automatische Auslage, falls sie sich beschweren. – kabiroberai

+0

Ja, aber diese ersten 20 Pixel benötigt die orange Farbe, eigentlich sollte die Höhe der Navigationsleiste 64 sein. – andyPaul

Verwandte Themen