Frage

Gibt es eine Möglichkeit, die Standardnavigationsleiste von einem zu machen? UINavigationController unten anstatt oben anzeigen? Ich weiß, dass es eine gibt UIToolbar Dies kann unten angezeigt werden, aber dieser ist spezifisch für jede Ansicht und trägt die Schaltfläche "Zurück" nicht.

War es hilfreich?

Lösung

Wenn Sie Ihre Ansicht mit einer NIB erstellen, ist sie ziemlich einfach - wählen Sie die Navigationsleiste in Attributen-> unteren Balken. Wenn nicht, sollten Sie direkt auf Navigationsleiste zugreifen und seine Koordinaten ändern. In Ihrem Ansichtsregler:

CGRect oldRect = self.navigationController.navigationBar.frame;
self.navigationController.navigationBar.frame = CGRectMake(x, y, oldRect.width, oldRect.height);

Wo X und Y Koordinaten sind, um Ihre Navigationsleiste zu platzieren.

Andere Tipps

Versuche dies :

bottomNav = [[UINavigationBar alloc] initWithFrame:CGRectMake(0.0,  self.view.frame.size.height - 20, self.view.frame.size.width, 44.0)];  
bottomNav.barStyle = UIBarStyleBlackOpaque;  
[self.parentViewController.view addSubview:bottomNav];  

Ich denke, Sie können, aber ich denke nicht, dass es von Apple genehmigt wird

@implementation UINavigationBar (CustomBar)
- (void)drawRect:(CGRect)rect {
    self.frame = CGRectMake(0, 436, 320, 44);

}

Hier ist die schnelle Version:

var bottomNav = UINavigationBar(x: 0, y: view.frame.size.height - 20, w: view.frame.size.width, h: 44)
bottomNav.barStyle = UIBarStyle.Black
parentViewController?.view.addSubview(bottomNav)
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top