2013-05-06 16 views
5

Jestem programistą poziomu pośredniego w Androidzie. Teraz tworzę aplikację, która ma widok. Kiedy klikam ten widok, muszę wyświetlić menu podręczne.tworzenie menu wyskakującego w systemie Android 2.3 GingerBread

Mam następujący kod z Android stronie dewelopera

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

Ale ten kod działa tylko na API 11 i powyżej.

Czy ktoś może mi pomóc, żebym mógł zrobić menu podręczne, które obsługuje również GingerBread?

+3

wykorzystać okno dialogowe http://developer.android.com/guide/topics/ ui/dialogs.html # AddingAList – Raghunandan

+0

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

Odpowiedz

3

Można zamiast tego użyć PopupWindow i showAsDropDown().

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

+0

Witam, zapoznaj się z moim pytaniem .. theismet działa tylko na API 11+ – sam

+0

Tak sam , dlatego zaproponowałem FloatingContextMenu! Powinno działać. Lub spróbuj z PopupWindow! Daj nam znać! – Madthew

+0

ale ... czy to pływające menu kontekstowe lub okno popupwindow pojawi się tuż pod tym widokiem, tak jak menu popup? – sam

0

można spróbować następujących czynności:

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(); 
} 

gdzie builder.set... gdzie można ustawić tytuł, pozytywne działanie przycisku (czyli "Ok"), negatywne działanie przycisku (czyli „Anuluj ") i inne opcje.

1

Menu podręczne są teraz dostępne pod numerem support library v4 (PopupMenuCompat).

+0

Nie wierzę, że dodaje obsługę PopupMenu dla pre API-11. Wydaje się, że PopupMenuCompat umożliwia przypisanie OnTouchListener do widoku zakotwiczenia PopupMenu, który umożliwia przeciąganie do otwartych funkcji po Jellybean bez łamania wszystkich wcześniejszych API. –

0

Ponieważ moja wiedza PopupMenu nie jest wsparcie dla systemu Android 2.3, PopupWindow tylko wsparcie dla systemu Android 2.3, więc lepiej wykorzystać PopupWindow w Androidzie 2.3

Powiązane problemy