Wiem, że Activities
zostały zaprojektowane tak, aby reprezentować pojedynczy ekran mojej aplikacji, podczas gdy Fragments
zostały zaprojektowane tak, aby były układami interfejsu wielokrotnego użytku z wbudowaną logiką.
Do niedawna opracowałem aplikację, ponieważ mówiono, że należy ją opracować. Stworzyłem an Activity
reprezentujący ekran mojej aplikacji i użyłem Fragmentów dla ViewPager
lub Google Maps
. Rzadko tworzyłem ListFragment
interfejs użytkownika, który może być wielokrotnie używany.
Ostatnio natknąłem się na projekt, który zawiera tylko 2 Activities
jeden jest, SettingsActivity
a drugi to MainActivity
. Układ MainActivity
jest zapełniony wieloma ukrytymi pełnoekranowymi fragmentami interfejsu użytkownika i tylko jeden jest pokazany. W Activity
logice jest wiele FragmentTransitions
różnych ekranów aplikacji.
Podobało mi się to, że ponieważ aplikacja używa an ActionBar
, pozostaje nienaruszona i nie porusza się wraz z animacją przełączania ekranu, co dzieje się z Activity
przełączaniem. Daje to bardziej płynne odczucie przejścia między ekranami.
Myślę więc, że chcę podzielić się twoim obecnym sposobem programowania w tym temacie. Wiem, że na pierwszy rzut oka może to wyglądać na pytanie oparte na opiniach, ale patrzę na to jako na pytanie dotyczące projektowania i architektury Androida ... oparty na opiniach.
AKTUALIZACJA (01.05.2014): Po tej prezentacji Erica Burke z Square (muszę powiedzieć, że jest świetną prezentacją z wieloma przydatnymi narzędziami dla programistów Androida. I nie jestem w żaden sposób związany z Square)
http://www.infoq.com/presentations/Android-Design/
Z mojego osobistego doświadczenia w ciągu ostatnich kilku miesięcy odkryłem, że najlepszym sposobem na zbudowanie moich aplikacji jest tworzenie grup fragmentów, które reprezentują przepływ w aplikacji i prezentują wszystkie te fragmenty w jednym Activity
. Zasadniczo będziesz mieć taką samą liczbę Activities
w aplikacji, jak liczba przepływów. W ten sposób pasek akcji pozostaje nienaruszony na wszystkich ekranach przepływu, ale jest odtwarzany po zmianie przepływu, co ma sens. Jak stwierdza Eric Burke i jak sobie uświadomiłem, filozofia używania jak najmniejszej Activities
liczby nie ma zastosowania do wszystkich sytuacji, ponieważ powoduje bałagan w tym, co nazywa aktywnością „Boga”.