5

I'm developing an android app using design library and appCompat library. I'm facing some issues when tried to listen to long click on a menu item. My app has a NavigationView as a side menu, inside this navigationview I had a menu with a lot of items. I can listen to click of these items but I can't listen to the long click. Does anybody know how do I implement it?

Thanks.

Anderson Silva
  • 709
  • 1
  • 7
  • 31

2 Answers2

0

Do it like this, but you have to set the popup_layout.xml into the MENU folder and write in the tags <menu> and not constraint layout or something like that.

in my Java class I wrote this for my list and important write R.menu.yourlayout):

listView = (ListView) findViewById(R.id.listView);

listView.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {

    @Override
    public boolean onItemLongClick(AdapterView<?> parent, View v, int position, long id) {
        PopupMenu p = new PopupMenu(ViewListContents.this, v);
        MenuInflater inflater = p.getMenuInflater();
        inflater.inflate(R.menu.popup_layout, p.getMenu());
        p.show();
        return true;
    }
});

If you have any questions ask me in the comments.

Ruben Helsloot
  • 12,582
  • 6
  • 26
  • 49
Noah
  • 188
  • 4
  • 24
-3

update

You can use:

Menu myMenu = navigationView.getMenu();
MenuItem myItem = myMenu.findItem(R.id.my_item);

myItem.setOnLongClickListener(new View.OnLongClickListener() {
    @Override
     public boolean onLongClick(View v) {
       // do something 

    }
});
Loolooii
  • 8,588
  • 14
  • 66
  • 90