Optionenmenü - Selektierter Eintrag hervorheben und Nichtreaktion bei erneutem Klick

  • 3 Antworten
  • Letztes Antwortdatum
P

PHANTOMIASER

Neues Mitglied
0
Hallo zusammen!

Ich habe eine App, welche aus mehreren Activities besteht. Da bei jeder Activity das gleiche Optionenmenü gezeigt werden soll, habe ich eine Activity (MyMenuActivity) angelegt, die nur die beiden Methoden onCreateOptionsMenu() und onOptionsItemSelected() besitzt. Jede meiner Activities erweitere ich nun um MyMenuActivity.

Klickt der Benutzer auf den Eintrag "Testeintrag" im Optionenmenü, so wird dies ausgeführt:

Code:
@Override
public boolean onOptionsItemSelected(MenuItem item) {
	switch (item.getItemId()) {
		case R.id.testpage: {
			Intent testpage = new Intent(this, TestActivity.class);
			startActivity(testpage);
			return true;
		}
		...
	}
}
Es wird also eine neue TestActivity "aufgerufen".

Das Problem ist jetzt aber, dass die neue TestActivity wieder das Optionenmenü mit dem item "Testeintrag" besitzt und der Benutzer wieder draufdrücken kann und wieder eine TestActivity neu aufgerufen wird. Das kann man theoretisch unendlich tun.
Was ich aber gerne hätte: Wie kann ich aus einer Activity heraus dem Menü "sagen", dass wenn ein Eintrag geklickt wird, dass nur dann ein startActivity() ausgeführt werden soll, wenn der Benutzer nicht schon in diesem "Bereich" ist?

Noch besser wäre wenn ich dem Menü mitteilen kann, welches item gerade "aktiv" ist, so dass schon optisch dem Benutzer klar ist, dass er zwar klicken kann, es aber nichts bringen wird?

Die Amazon-App hat das schön gelöst: Klicke ich im Optionen-Menü auf den Eintrag "Angebote", so wird die Angebotsübersichtseite aufgerufen. Klicke ich wieder ins Menü, so sehe ich, dass der Eintrag "Angebote" orangefarben hervorgehoben ist. Klicke ich nun erneut auf "Angebote", so schließt das Optionenmenü, aber ich bleibe auf der gleichen Seite. Wähle ich hingegen ein Angebot aus, so komme ich auf die Angebotsdetailseite. Klicke ich nun im Optionenmenü auf den ausgewählten orangefarbenen Angebote-Eintrag, so komme ich wieder zurück zur Angebotsübersichtseite.

Wie kann ich so etwas erreichen? Jemand eine Idee?

Gruß PHANTOMIASER
 
Hat niemand eine Idee, wie ich das lösen könnte?
 
1. ist das nicht sinn eines menüs - zu navigieren meine ich
2. ist das nicht sinn eines menüs - dass du ein globales hast
3. Sollte man dazu in der ActionBar ein Spinner verwenden
4. Wo ist das Problem, sich den Namen der klasse zu holen und dann je nach name den entsprechenden eintrag im menü mit einer farbe zu färben?

Gruß
 
Danke für die Antwort.

Ist meine erste Android-App, sorry, bin noch nicht mit dem UI so vertraut was ich wann am Besten verwende.

Sind Navigation Tabs besser geeignet?
Action Bar | Tabs | Android Developers

Gruß PHANTOMIASER
 

Ähnliche Themen

P
Antworten
13
Aufrufe
546
Peter18
P
Zurück
Oben Unten