Make a Popupmenu in Android Java

Create a PopupMenu in android java with menu resource and icons support

This Popupmenu for android is fully functional with menu resource file, icons etc.
The menu is engulfed in Try block so any exceptions it may thrown are caught.

You will have to place your menu resource file in the menu folder and this code will inflate that menu file.
You can set icons too in the menu file and the popupmenu will show icons.

Here is the code

try {

    PopupMenu menu = new PopupMenu(getApplicationContext(), view);

    Object menuHelper;
    Class[] argTypes;
    try {
        Field fMenuHelper = PopupMenu.class.getDeclaredField("mPopup");
        menuHelper = fMenuHelper.get(menu);
        argTypes = new Class[]{boolean.class};
        menuHelper.getClass().getDeclaredMethod("setForceShowIcon", argTypes).invoke(menuHelper, true);
    } catch (Exception e) {


    menu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
        public boolean onMenuItemClick(MenuItem menu_item) {
            switch (menu_item.getItemId()) {

                    //Do your action here


                    //Do your action here
            return true;

Leave a Reply

Your email address will not be published.