6

Secondo Apple di "Human Interface Guidelines" - barre di navigazione dovrebbero avere solo un altro tasto (tranne il tasto back standard)iOS barra di navigazione VS UIToolbar

Tutto questo va bene, ma ci sono diverse applicazioni che hanno numerosi pulsanti la barra di navigazione in alto, ad esempio l'app Facebook (Image) La mia domanda/discussione nasce da qui. . .

1) Sarebbe mela accettare l'uso di un UIToolbar al posto di una barra di navigazione (con un pulsante "indietro"" personalizzato, che agirebbe come un sostituto per la barra di navigazione:

2) E 'questo il modo Facebook avrebbe raggiunto la barra superiore

3) Se potessi usare una barra degli strumenti invece di una barra di navigazione, avrei un piccolo spazio in alto dove la barra si sovrapporrà alla "barra di stato" - come dovrei superare questo problema? - - posizionare un A UIView, in quella posizione con una barra degli strumenti incorporata, è la soluzione corretta a questo problema?

tutto il vostro aiuto/commenti/guide sono molto apprezzate

+1

Chiunque segua questa discussione potrebbe trovare utile anche questo post: http://stackoverflow.com/questions/18953509/how-to-prevent-navigation-bar-from-covering-top-of-view-in-ios -7 –

risposta

5

Non è necessario mostrare la barra di navigazione, può essere nascosta (vedere setNavigationBarHidden:animated:). Puoi usare invece UIToolbar ma ci sono molte opzioni per personalizzare la barra di navigazione.

È possibile impostare leftBarButtonItem, titleView o rightBarButtonItem come visualizzazione personalizzata come specificato nello UINavigationController class reference. Quelle proprietà prendono un UIBarButtonItem ma quello non deve essere un pulsante. È possibile creare un UIBarButtonItem utilizzando initWithCustomView: per creare un UIBarButtonItem con qualsiasi UIView. Può essere un UIView che ha più pulsanti come sottoview o una barra di ricerca o controllo segmentato o qualsiasi altra visualizzazione di cui hai bisogno, purché si adattino e non violino il HIG. Puoi farlo con una qualsiasi delle 3 visualizzazioni personalizzate sul navBar.

3

1) Sarebbe mela accettare l'uso di un UIToolbar al posto di una barra di navigazione (con un pulsante "indietro"" personalizzato, che opererebbe come una sostituzione per la barra di navigazione:

il mio consiglio, di fronte a una "dovrei forse violare le specifiche lavorando intorno ad esso e sperando che non mente" la decisione, è "no". Sei disposto a passare il tempo a cambiare il codice per soddisfare le specifiche se non lo accettano?

2) È questo il modo in cui Facebook avrebbe raggiunto il livello migliore?

Non sono sicuro che sia rispondente.

3) se potevo usare una barra degli strumenti al posto di una barra di navigazione, avrei un piccolo spazio in alto dove la barra degli strumenti si sovrappongono lo "status bar" - come devo superare questo problema? - - posizionare un A UIView, in quella posizione con una barra degli strumenti incorporata, è la soluzione corretta a questo problema?

Ho creato un'app con una barra degli strumenti e una barra di navigazione. See the screen shots (Review page) here. La barra degli strumenti si trova nella parte superiore, sotto la barra di navigazione. A un certo punto, ho aggiunto una funzionalità per fare un tocco sulla barra di navigazione nascondere/mostrare la barra degli strumenti. Ma poiché sono usciti i display più lunghi, l'ho rimosso. La maggior parte degli utenti non sembra preoccuparsi del colpo extra piccolo nella parte superiore finché il display fornisce le informazioni di cui ha bisogno.

Era utile?

+0

E 'stato davvero, vorrei poter accettare tutte e tre le risposte :) - e ottima app a proposito -Grazie –

+0

Sei il benvenuto. In bocca al lupo! – FuzzyBunnySlippers

2

1) Probabilmente. Non ho visto o sentito un esempio di Apple che si preoccupa di rifiutare un'applicazione che utilizzava una barra degli strumenti anziché un controller di navigazione. Tuttavia, potresti avere un recensore che ha una brutta giornata che decide di rifiutare la tua app per tale motivo; è davvero impossibile sapere con certezza, ma improbabile. Devo dire che ho inviato un'applicazione simile alle app con un controller di navigazione, ma la barra in alto è personalizzata ed è stata accettata.

2) La barra superiore di Facebook è probabilmente completamente personalizzata. Puoi vedere che l'effetto trasparenza è diverso dalla trasparenza della barra di navigazione standard e il layout non è simile a nessun controllo Apple standard.

3) Allineare la barra in alto (tuttavia lo si fa) con la guida di montaggio in alto nel builder dell'interfaccia (o nel codice).

Problemi correlati