2014-10-21 15 views
9

Sto ridisegnando la mia app corrente seguendo all'incirca lo excellent intro here di Chris Bane. Una cosa che mi ha colpito, però:Come funzionano la nuova barra degli strumenti di Android e la barra delle azioni contestuali?

Se ho impostato il nuovo v7-appcompat Toolbar come ActionBar sostituzione tramite setSupportActionBar() e derivano il mio tema da Theme.AppCompat.Light.NoActionBar, allora la barra di azione contestuale (CAB) sarà ancora pop-up e spingere i miei contenuti, tra cui la barra degli strumenti, in basso:

Ora, potrei cercare di rendere il CAB sovrapporre la mia barra degli strumenti, ma ho pensato l'interfaccia utente (fondamentalmente le metriche e posizionamento) del pulsante indietro e il testo della cabina don' t abbinare la barra degli strumenti (come visto nell'immagine), quindi mi chiedo se c'è piuttosto una modalità "CAB" nell'implementazione della barra degli strumenti in modo che la barra degli strumenti c potrebbe assumere anche questo ruolo?

risposta

30

è necessario impostare il seguente nel tema:

<item name="windowActionModeOverlay">true</item> 

Questo renderà la sovrapposizione modalità di azione per la vista dei contenuti, e quindi la vostra barra degli strumenti.

+2

Mille grazie per il puntatore, Chris! Come pensavo, la soluzione è la sovrapposizione. Tuttavia, come puoi vedere nello screenshot qui sopra, ci sono diversi problemi visivi: (1) Il pulsante Indietro che chiude il CAB è posizionato più a destra di quello dalla barra degli strumenti, (2) c'è una barra luminosa a sinistra di "Textauswahl", e (3) il CAB sembra essere un pò più piccolo di altezza della Toolbar (per il quale uso 'attr/actionBarSize'). È previsto o sono questi difetti visivi che verranno corretti? –

+1

Cosa fare se impostiamo dell'altezza sulla barra degli strumenti separata da wrap_content, quindi il CAB non è in grado di sovrapporre completamente la barra degli strumenti. Come possiamo impostare la larghezza di CAB allora. – user2779311

Problemi correlati