2010-11-19 5 views
6

Ho un menu Opzioni installato e funzionante nella mia applicazione Android e ho sovrascritto i metodi onCreateOptionsMenu, onOptionsItemSelected e onPrepareOptionsMenu per personalizzare un po 'il menu.Android - mantiene aperto il menu delle opzioni

La mia domanda è legata alla permanenza del menu Opzioni dopo che l'utente ha fatto clic su una voce di menu. Fondamentalmente, mi piacerebbe essere in grado di nascondere il menu fino a quando l'utente non fa clic sul tasto del menu del dispositivo. Una volta che l'utente fa clic su questa chiave, mi piacerebbe essere in grado di tenere il menu in posizione indipendentemente da quante volte l'utente fa clic sulle voci di menu. Se l'utente desidera nascondere il menu Opzioni, dovrebbe semplicemente fare nuovamente clic sul tasto del menu del dispositivo.

Questo tipo di interazione è supportato (o anche consigliabile). Se questa interazione non è supportata, eventuali suggerimenti alternativi sono più che benvenuti.

Cheers!

Sean

risposta

3

Questo non sarà possibile con onCreateOptionsMenu e altri metodi. Agiscono sempre in questo modo.

Ma puoi farlo in un altro modo. Ma lì devi programmare da solo l'intero menu. Fondamentalmente aggiungi il Menu nel tuo layout.xml e lascialo nascosto (visibility = gone). Quindi sovrascrivi i metodi onKeyDown. Lì si controlla se è il tasto Menu. se il menu non è ancora aperto sì, allora si mostra il menu. Se è già aperto, lo nascondi.

non dovrebbe essere troppo difficile. La cosa buona è che puoi far apparire il menu esattamente come desideri e lasciare che reagisca nel modo desiderato.

+0

Grazie Patrick - Non avevo nemmeno pensato alla possibilità di nascondere/mostrare un menu da solo. – seanoshea