Android Context Menu ExampleThe context menu appears when user press long click on the element. It is also known as floating menu.It doesn't support item shortcuts and icons. Android Context Menu ExampleLet's see the simple example of context menu in android.activity_main.xmlDrag one listview from the pallete, now the xml file will look like this:
File: activity_main.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > <ListView android:id="@+id/listView1" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:layout_marginLeft="66dp" android:layout_marginTop="53dp" > </ListView> </RelativeLayout> Activity classLet's write the code to display the context menu on press of the listview.
File: MainActivity.java
package com.javatpoint.contextmenu; import android.os.Bundle; import android.app.Activity; import android.view.ContextMenu; import android.view.ContextMenu.ContextMenuInfo; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.ListView; import android.widget.Toast; public class MainActivity extends Activity { ListView listView1; String contacts[]={"Ajay","Sachin","Sumit","Tarun","Yogesh"}; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); listView1=(ListView)findViewById(R.id.listView1); ArrayAdapter<String> adapter=new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,contacts); listView1.setAdapter(adapter); // Register the ListView for Context menu registerForContextMenu(listView1); } @Override public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) { super.onCreateContextMenu(menu, v, menuInfo); menu.setHeaderTitle("Select The Action"); menu.add(0, v.getId(), 0, "Call");//groupId, itemId, order, title menu.add(0, v.getId(), 0, "SMS"); } @Override public boolean onContextItemSelected(MenuItem item){ if(item.getTitle()=="Call"){ Toast.makeText(getApplicationContext(),"calling code",Toast.LENGTH_LONG).show(); } else if(item.getTitle()=="SMS"){ Toast.makeText(getApplicationContext(),"sending sms code",Toast.LENGTH_LONG).show(); }else{ return false; } return true; } } Output:Output after long press on the listview. Output after clicking on the context menu. PREVIOUS NEXT |
Android Context Menu Example
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment