@Override public boolean onContextItemSelected(MenuItem item) { AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo) item.getMenuInfo(); ArrayList<Insert> items = new ArrayList<>(); FragmentManager fm = getActivity().getSupportFragmentManager(); Insert insert; switch (item.getItemId()) { case R.id.menu_toggle_fav: adapter.toggleSelection(info.position); break; case R.id.menu_edit: insert = (Insert) adapter.getItem(info.position); InsertDialogFragment dialog = InsertDialogFragment.newInstance(insert); dialog.show(fm, ARG_EDIT_INSERT); break; case R.id.menu_delete: insert = (Insert) adapter.getItem(info.position); items.add(insert); DeleteInsertDialogFragment deleteDialog = DeleteInsertDialogFragment.newInstance(items); deleteDialog.show(fm, ARG_DELETE_INSERT); break; } return super.onContextItemSelected(item); }
@Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case R.id.menu_add_insert: InsertDialogFragment dialog = InsertDialogFragment.newInstance(null); dialog.show(getActivity().getSupportFragmentManager(), ARG_NEW_INSERT); dialog.setOnInsertCreateListener( new InsertDialogFragment.OnInsertCreateListener() { @Override public void onInsertCreated() { adapter.refreshAdapter(); } }); break; default: return super.onOptionsItemSelected(item); } return true; }