9 Stimmen

Best Practices für die Implementierung eines mehrstufigen Optionsmenüs unter Android?

Ich arbeite derzeit an einer Portierung einer iPhone-App auf ein Android-Gerät. Die iPhone-App verfügt über ein benutzerdefiniertes globales Navigationsmenü am unteren Rand des Bildschirms. Bei der Übertragung auf Android wurde vorgeschlagen, dieses benutzerdefinierte Menü durch das allgemeine Optionsmenü zu ersetzen (das über die Optionstaste auf dem Gerät aufgerufen wird), um dem Ganzen ein nativeres Android-Aussehen und -Gefühl zu verleihen.

Das Problem ist, dass das Menü selbst mehrere Ebenen hat (z. B. drei Hauptoptionen wie A, B, C und Unteroptionen wie A1, A2, A3). Ich habe mich umgeschaut, aber nicht diese Art von Multi-Level-Option-Menü auf Android-Apps gesehen, so bin auf der Suche nach einigen Richtlinien, wie dies am besten erreicht werden kann.

Ich habe einige Fragen zur Anpassung des Optionsmenüs gesehen, wie zum Beispiel diese; Android: Anpassen des Menüs der Anwendung (z.B. Hintergrundfarbe) und sie scheinen darauf hinzudeuten, dass das native Framework nicht viele Optionen unterstützt.

Sollte ich auf ein bisschen hacken in das Optionsmenü (ist das eine gute Idee?), oder suchen Sie nach einem anderen Ansatz zur Änderung der App Flow? Ich versuche zu verstehen, was der beste Weg wäre, um eine konsistente Benutzererfahrung auf Android zu erhalten und gleichzeitig den Grad der Abweichung von der iPhone-App zu reduzieren.

Danke!

9voto

CommonsWare Punkte 950864

Ich habe mich umgesehen, aber diese Art von mehrstufigen Optionsmenüs bei Android-Apps noch nicht gesehen, daher suche ich nach Leitlinien, wie dies am besten erreicht werden kann.

Optionsmenüs unterstützen Untermenüs, aber nur eine Ebene tief (d.h. das Menü kann ein Untermenü haben, aber ein Untermenü kann kein Unter-Untermenü haben).

1voto

Bananeweizen Punkte 21303

Wenn Sie das wirklich brauchen (und die Standards der Android-Plattform in Bezug auf die Menütiefe verletzen wollen), dann können Sie das ganz einfach implementieren, indem Sie eine AlertDialog mit Listen für jede verschachtelte Ebene Ihres Menüs. Optisch sehen diese genau so aus wie ein Optionsmenü.

1voto

George Punkte 869

Ich habe etwas Ähnliches gemacht, wie Banana vorgeschlagen hat. Ich würde nur hinzufügen, dass der Grund für diese Einschränkung die unzähligen Geräte und Bildschirmauflösungen sind, die unterstützt werden müssen. Mehrere verschachtelte Menüs könnten auf einem Tablet gut aussehen, aber nicht auf einem 5-Zoll-Bildschirm, also müssen wir das im Hinterkopf behalten.

0voto

Berťák Punkte 7067

Für mich ist das Hinzufügen von

android:onClick="onOptionsItemSelected"

zu verschachtelten Menüpunkten funktioniert.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X