Hier nun noch ein kleines Beispiel wie man ein ContextMenü erstellt.
Für alle die es nicht wissen, das ContextMenü ist ein Menü was erscheint, wenn man länger auf ein Control wie eine ListView oder ein EditText klickt.
In meinem Beispiel verbinde ich das ContxtMenü mit einer getListView.
getListView mit ContextMenü verbinden
Java
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
.........
registerForContextMenu(getListView());
}
ContextMenü erstellen und das Verhalten beim anklicken eines Eintrages zuweisen
Java
static final int EDIT_ID = 0;
static final int DELETE_ID = 1;
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) {
super.onCreateContextMenu(menu, v, menuInfo);
menu.add(0, EDIT_ID, 0, "Edit");
menu.add(0, DELETE_ID, 0, "Delete");
}
public boolean onContextItemSelected(MenuItem item) {
switch (item.getItemId()) {
case EDIT_ID:
Toast toastEdit = Toast.makeText(this, "Eintrag bearbeiten", Toast.LENGTH_SHORT);
toastEdit.show();
return true;
case DELETE_ID:
Toast toastDelete = Toast.makeText(this, "Eintrag löschen", Toast.LENGTH_SHORT);
toastDelete.show();
return true;
default:
return super.onContextItemSelected(item);
}
}
Alles anzeigen
Hier gilt das selbe wie im vorherigen Tutorial.
Man kann statt
auch folgendes schreiben wenn man die Bezeichner in der Datei /res/values/strings.xml hinterlegt hat.
/res/values/strings.xml