Вызовите registerForContextMenu, где необходимо, onCreateView или onCreate.
registerForContextMenu(getListView());
Реализуйте в своем адаптере, как показано ниже.
public class CustomeLabelAdpater extends BaseAdapter implements View.OnCreateContextMenuListener{
Поместите эту строку в ваш метод getView.
vi.setOnCreateContextMenuListener(this);
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
View vi = convertView;
vi.setOnCreateContextMenuListener(this);
}
Укажите этот метод как пустой в вашем адаптере.
public void onCreateContextMenu(ContextMenu contextMenu, View view, ContextMenu.ContextMenuInfo contextMenuInfo) {
// empty implementation
}
Затем вы переопределяете onCreateContextMenu и onContextItemSelected в своем фрагменте или операции.
@Override
public void onCreateContextMenu(ContextMenu contextMenu, View view,
ContextMenu.ContextMenuInfo contextMenuInfo) {
// create context the menu
Activity.getMenuInflater().inflate(R.menu.context_menu, contextMenu);
}
@Override
public boolean onContextItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.open:
return true;
default:
return super.onContextItemSelected(item);
}
}