2013-05-06 3 views
5

Sono un programmatore di livello intermedio in Android. Ora sto sviluppando un'applicazione che ha una vista. Quando clicco su quella vista devo visualizzare un menu popup.creazione menu popup in Android 2.3 GingerBread

ho ottenuto il seguente codice dal sito degli sviluppatori Android

public void showPopup(View v) { 
    PopupMenu popup = new PopupMenu(this, v); 
    MenuInflater inflater = popup.getMenuInflater(); 
    inflater.inflate(R.menu.actions, popup.getMenu()); 
    popup.show(); 
} 

Ma questo codice sta lavorando solo su API 11 e al di sopra.

Qualcuno può aiutarmi in modo che possa creare un menu popup che supporti anche GingerBread?

+3

utilizzare una finestra di dialogo http://developer.android.com/guide/topics/ ui/dialogs.html # AddingAList – Raghunandan

+0

https://developer.android.com/reference/android/support/v7/widget/PopupMenu.html – Zyoo

risposta

3

è possibile utilizzare PopupWindow e showAsDropDown().

O http://developer.android.com/guide/topics/ui/menus.html#FloatingContextMenu

+0

Ciao, per favore leggi la mia domanda..thismethod funziona solo su API 11+ – sam

+0

Sì sam , questo perché ho suggerito FloatingContextMenu! Dovrebbe funzionare. Oppure prova con PopupWindow! Facci sapere! – Madthew

+0

ma ... questo menu di scelta rapida o finestra popup apparirà appena sotto questa vista come popupmenu? – sam

0

Si potrebbe provare la seguente:

public void myDialog() { 
    AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); 
    LayoutInflater inflater = getActivity().getLayoutInflater(); 
    View v = inflater.inflate(R.layout.my_xml_layout, null); 
    builder.setView(v); 
    builder.set......; 
    builder.show(); 
} 

dove builder.set... è dove è possibile impostare il titolo, l'azione pulsante positivo (vale a dire "Ok"), negativo azione del pulsante (vale a dire "Cancellare ") e altre opzioni.

1

I menu a comparsa sono ora disponibili in support library v4 (PopupMenuCompat).

+0

Non credo che aggiunga il supporto a PopupMenu per la pre-API-11. PopupMenuCompat sembra consentire di assegnare un OnTouchListener alla vista di ancoraggio di PopupMenu che ti darà capacità di trascinamento per aprire post Jellybean senza rompere tutte le API precedenti. –

0

Come la mia conoscenza PopupMenu non è il supporto per Android 2.3, PopupWindow solo il supporto per Android 2.3, in modo da meglio utilizzare PopupWindow in Android 2.3