Ich weiß, dass Aktivitäten
dazu dienen, einen einzelnen Bildschirm meiner Anwendung darzustellen, während Fragments
dazu bestimmt sind, wiederverwendbare UI-Layouts mit eingebetteter Logik darin zu sein.
Bis vor Kurzem habe ich eine Anwendung entwickelt, wie es verlangt wurde. Ich habe eine Aktivität
erstellt, um einen Bildschirm meiner Anwendung darzustellen, und Fragmente für ViewPager
oder Google Maps
verwendet. Ich habe selten einen ListFragment
oder ein anderes UI erstellt, das mehrmals wiederverwendet werden kann.
Kürzlich bin ich auf ein Projekt gestoßen, das nur aus 2 Aktivitäten
besteht, eine ist eine SettingsActivity
und die andere ist die MainActivity
. Das Layout der MainActivity
ist mit vielen versteckten Fullscreen-UI-Fragmenten gefüllt und nur eines wird angezeigt. In der Logik der Aktivität
gibt es viele FragmentTransitions
zwischen den verschiedenen Bildschirmen der Anwendung.
Was mir an diesem Ansatz gefällt, ist, dass durch die Verwendung einer ActionBar
die Anwendung intakt bleibt und sich nicht mit der Bildschirmwechsel-Animation bewegt, was beim Wechsel von Aktivitäten
passiert. Dies gibt den Bildschirmübergängen eine flüssigere Wirkung.
Also frage ich eigentlich, wie Ihr derzeit bei der Entwicklung vorgeht, was dieses Thema betrifft. Ich weiß, es mag auf den ersten Blick wie eine Meinungsfrage aussehen, aber ich betrachte es als eine Frage des Android-Designs und der Architektur... nicht wirklich eine Meinungsfrage.
UPDATE (01.05.2014): Nach dieser Präsentation von Eric Burke von Square, (die ich sagen muss, ist eine großartige Präsentation mit vielen nützlichen Tools für Android-Entwickler. Und ich habe keinerlei Verbindung zu Square)
http://www.infoq.com/presentations/Android-Design/
Aus meiner persönlichen Erfahrung der letzten Monate habe ich festgestellt, dass der beste Weg, meine Anwendungen zu erstellen, darin besteht, Gruppen von Fragmenten zu erstellen, die einen Fluss in der Anwendung darstellen und all diese Fragmente in einer Aktivität
darzustellen. Im Grunde genommen haben Sie dann in Ihrer Anwendung die gleiche Anzahl von Aktivitäten
wie die Anzahl der Flüsse. Auf diese Weise bleibt die Action Bar auf allen Bildschirmen des Flusses intakt, wird jedoch beim Wechsel eines Flusses neu erstellt, was viel Sinn macht. Wie Eric Burke sagt und wie ich auch erkannt habe, ist die Philosophie, so wenig Aktivitäten
wie möglich zu verwenden, nicht in allen Situationen anwendbar, da sie ein Durcheinander in dem darstellt, was er die "God" Aktivität nennt.