Context menu in android

I am working on a menu in an Android application. I made a simple menu. Now I want to work in the context menu. Can someone give me an example of how I should proceed?

0
source share
4 answers

just register for the context menu in the onCreate method

@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); TextView tv = (TextView)this.findViewById(R.id.textViewId); registerForContextMenu(this.getTextView()); } 

create ContextMenu here by adding an element

 @Override public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) { menu.setHeaderTitle("Sample Context Menu"); menu.add(200, 200, 200, "item1"); } 

answer here for the selected item

  @Override public boolean onContextItemSelected(MenuItem item) { if (item.itemId() = some-menu-item-id) { //handle this menu item return true; } … other exception processing } 

just run and get your context menu :)

+5
source

To create a context menu, view this . This may be useful for you ..

+1
source

edit: sorry, but ist it looks like you need to register a view for the context menu, and then you need to configure the created and selected material.

 registerForContextMenu([your view]) @Override public void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo) { switch (item.getItemId()){ case CONTEXT_ASSIS: switch (item.getGroupId()){ case CONTEXT_ASSIS: break; } case R.id.navi: break; } } @Override public boolean onContextItemSelected(MenuItem item) { switch (item.getItemId()){ case CONTEXT_ASSIS: switch (item.getGroupId()){ case R.id.navi: break; case R.id.assis: break; case R.id.save_pos: break; case R.id.docs: break; } return true; } 

// ende edit

  @Override public boolean onCreateOptionsMenu(Menu menu) { MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.menutest, menu); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { // Handle item selection boolean ret =super.onOptionsItemSelected(item); switch (item.getItemId()) { case R.id.rotate: break; case R.id.settings: break; case R.id.talk: break; case R.id.calendar: break; case R.id.speechsearch: break; } return ret; } 
0
source

try this one.

  registerForContextMenu(Listview); @Override public void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo) { super.onCreateContextMenu(menu, v, menuInfo); menu.add(Menu.NONE, 0, Menu.NONE, "Edit"); menu.add(Menu.NONE, 1, Menu.NONE,"Delete"); menu.add(Menu.NONE, 2, Menu.NONE,"Merge"); //menu.add(Menu.NONE, 3, Menu.NONE,"Delete duplicate"); } 
0
source

Source: https://habr.com/ru/post/905770/


All Articles