Come realizzare la barra di navigazione di un display dicontroller Uinavigation in fondo?
-
28-10-2019 - |
Domanda
C'è un modo per creare la barra di navigazione predefinita di un UINavigationController
visualizzare in basso anziché in alto? So che esiste un UIToolbar
Questo può essere visualizzato in basso, ma quello è specifico per ogni vista e non porta il pulsante "schiena".
Soluzione
Se si crea la tua vista utilizzando un pennino, è piuttosto semplice: selezionare la barra di navigazione in attributi-> barra inferiore. In caso contrario, è necessario accedere direttamente alla barra di navigazione e modificare le sue coordinate. Nel tuo controller di visualizzazione:
CGRect oldRect = self.navigationController.navigationBar.frame;
self.navigationController.navigationBar.frame = CGRectMake(x, y, oldRect.width, oldRect.height);
dove xey sono coordinate per posizionare la barra di navigazione.
Altri suggerimenti
Prova questo :
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];
Penso che tu possa ma non penso che sarà approvato da Apple
@implementation UINavigationBar (CustomBar)
- (void)drawRect:(CGRect)rect {
self.frame = CGRectMake(0, 436, 320, 44);
}
Ecco la versione rapida:
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)