Eine Activity
, die NavigationDrawer enthält, soll seine Fragmente jonglieren. Mein Problem ist, dass die Schublade auf allen möglichen Bildschirmen der Anwendung verfügbar sein muss, was meine einzige Aktivität MainActivity sehr mit Fragment-Callback-Code und verschiedenen Arten von Navigation/Geschäftslogik überladen macht.NavigationDrawer-Aktivität ist mit Fragment-Callbacks und Geschäftslogik der Anwendung überladen
Wenn die Anwendung wächst, wird es schwieriger, durch die Aktivität zu navigieren, und ich habe angefangen, über mögliche alternative Ansätze nachzudenken. Ein neuer Ansatz muss das gleiche visuelle Verhalten des Originals beibehalten und das Durcheinander beseitigen.
Abgesehen von Navigationsschubladenereignissen gibt es mehrere Fragmente, die auch Navigations-/Geschäftslogik enthalten, die auch von der MainActivity behandelt werden soll. Zum Beispiel könnte ein Fragment 3 oder mehr Schaltflächen enthalten, die andere Fragmente starten oder einige geschäftsrelevante Geschäftslogik ausführen würden.
Also ... die resultierende Menge an Listener-Interfaces, die von MainActivity implementiert wird, wächst und beträgt ab diesem Zeitpunkt 20. Sie könnten sich vorstellen, dass es nicht gut aussieht oder sich gut anfühlt.
Ich denke, ich könnte Dinge zu mehreren NavigationDrawer Aktivitäten entkoppeln, um die Wartung zu erleichtern. Es deutet auf einen größeren Ressourcenverbrauch und eine leichte Abweichung der visuellen Effekte hin, da neue Aktivitäten erst gestartet werden, nachdem die Schublade geschlossen wurde, im Gegensatz zu dem ursprünglichen Ansatz, der Fragmente sofort verändert.
Denken Sie, dass es eine schlechte Idee ist? Wie kann es verbessert werden? Oder gibt es eine bessere Lösung?
Danke.
UPD verfeinert die Beschreibung.
Ich war in so eine Art Problem stecken und schrieb Frage hier> http://stackoverflow.com/questions/17779915/open-android-navigation-drawer-from-an-activity-class . Ich habe die Lösung nicht versucht, aber Sie können versuchen, wenn es funktioniert, ich bin mir nicht sicher, ob es funktioniert.Ich öffnete die Schublade nur aus wenigen Bildschirmen, die Fragmente sind. –
Messepunkt. Was ist mit visuellen Effekten - soll ich erst nach dem Schließen der Schublade neue Aktivitäten zeigen? – midnight
Sie haben Optionen auf Schublade, die klicken und startet eine neue Aktivität oder zeigt eines der Fragmente, es wird kein Problem sein, schließt es automatisch bei der Auswahl. –