Jestem nowy w systemie Android. Chcę zbudować aplikację z formatem kart. Znalazłem wiele dokumentacji, gdzie użyto Activity
. Również w wielu przypadkach używano FragmentActivity
. Nie jestem pewien, który z nich lepiej będzie zacząć. Proszę zasugerować, czy powinienem użyć Activity
lub FragmentActivity
, aby rozpocząć projektowanie w formacie tabulatora?Android - Aktywność kontra FragmentActivity?
Odpowiedz
ianhanniballake ma rację. Możesz uzyskać pełną funkcjonalność Activity
z FragmentActivity
. W rzeczywistości FragmentActivity
has more functionality).
Za pomocą FragmentActivity
można łatwo zbudować format tab and swap
. Dla każdej karty można użyć różnych Fragment
(Fragments
). Tak więc dla każdego FragmentActivity
można ponownie użyć tego samego Fragment
.
Nadal można użyć Activity
dla pojedynczych stron, takich jak lista coś i edytować element listy na następnej stronie.
Pamiętaj również, aby używać Activity
, jeśli używasz android.app.Fragment
; użyj FragmentActivity
, jeśli używasz android.support.v4.app.Fragment
. Nigdy nie podłączaj android.support.v4.app.Fragment
do android.app.Activity
, ponieważ spowoduje to zgłoszenie wyjątku.
Jeśli używasz kreatora Eclipse "Nowy projekt Android" w ostatnim pakiecie ADT, automatycznie otrzymasz zakładki zaimplementowane jako Fragmenty. To sprawia, że konwersja aplikacji na format tabletu jest znacznie łatwiejsza w przyszłości.
Aby uzyskać prosty układ jednego ekranu, możesz nadal używać Activity
.
FragmentActivity
daje wszystkich funkcjonalności Activity
plus umiejętność posługiwania Fragments które są bardzo przydatne w wielu przypadkach, szczególnie przy pracy z ActionBar, co jest najlepszym sposobem, aby użyć karty w Androidzie.
Jeśli jesteś tylko kierowania na urządzenia Honeycomb (v11) lub większe, możesz użyć Activity
i użyć natywnych fragmentów wprowadzonych w v11 bez problemu. FragmentActivity
został zbudowany specjalnie jako część Support Library w celu przywrócenia niektórych użytecznych funkcji (takich jak Fragmenty) do starszych urządzeń.
Należy również zauważyć, że prawdopodobnie szkolenie Backward Compatibility - Implementing Tabs będzie bardzo pomocne w przyszłości.
@ A - C - Edytowałem swoją odpowiedź - masz rację, że urządzenia z API 11+ mogą korzystać z natywnych fragmentów i normalnej klasy aktywności. – ianhanniballake
Zamierzam zakwestionować twierdzenie, że normalna klasa aktywności może być używana jako fragment w API11 +. Wygląda na to, że zmieniło się w KitKat. Zobacz https://android.googlesource.com/platform/frameworks/base.git/+/kitkat-mr1-release/core/java/android/app/Fragment.java#584 – cmarcelk
@cmarcelk - nie wiem, co "normalne Klasa aktywności może być używana jako Fragment "oznacza - powiedziałem, że' android.app.Activity' działa z 'Android.app.Fragment', a nic o nich nie jest wymienne. – ianhanniballake
- 1. Pusta aktywność kontra pusta aktywność
- 2. Android: Zmień kolor tekstu Tab w FragmentActivity
- 3. Android FragmentActivity zwraca wartość null w getActionBar()
- 4. Aktywność Android singleton
- 5. Android - koniec aktywność fragment
- 6. Android krach aktywność (DeadObjectException)
- 7. Android uzyskać poprzednią aktywność
- 8. Android: Aktywność połączeń innej aplikacji
- 9. Android - przywracanie ostatnio oglądane Aktywność
- 10. Android: Aktywność wywołania z fragmentu
- 11. Android aktywność pick kolor tekstu
- 12. Testowanie przy użyciu FragmentActivity Junit
- 13. Singleton kontra Intents (Android)
- 14. Android CursorLoader kontra AsyncQueryHandler?
- 15. Ekran zakładki FragmentActivity Blackout
- 16. Pobierz fragment FragmentActivity
- 17. Gdzie jest FragmentActivity # onDetachFragment?
- 18. getSupportActionBar użyciu FragmentActivity
- 19. Jak wyłączyć tytuł okna w FragmentActivity?
- 20. Jak uruchomić określoną aktywność w Android Studio?
- 21. Jak zmienić aktywność startową w systemie Android?
- 22. Animacja podczas przełączania Aktywność w systemie Android?
- 23. Android Zakończ Aktywność i rozpocznij kolejny
- 24. android 5 aktywność przejście na niższy api
- 25. Android Manifest- zamiarem filtr i aktywność
- 26. Warunkowo ustawiona pierwsza aktywność w systemie Android
- 27. Android Aktywność ruchoma z odrzuceniem na przesunięcie
- 28. Android: Wykryj aktywność/zmiana aplikacji Wydarzenia
- 29. Android: Fragment nie może dostać aktywność
- 30. Android pobiera aktywność z poziomu anonimowej klasy
FYI, znalazłem kilka dobrych dyskusji na temat Fragmentu Androida w innym języku tutaj [Fragment trong Android] (http://www.umbalaaz.com/threads/cach-su-dung-fragment-trong-android.336 /) – UmbalaAZ
ALE zobacz odpowiedź @ ianhanniballake: * chyba że starszy interfejs API jest starszy niż 11 *, możesz użyć 'Activity' zamiast' FragmentActivity' i nadal mieć dostęp do Fragments; * ta * odpowiedź nie dość tego mówi (chociaż ostatni akapit implikuje to). – ToolmakerSteve
Jak wiemy, głównie mamy BaseActivity w naszym projekcie, a wszystkie inne działania go rozszerzają. Ale jeśli chodzi o FragmentActivity, nie możemy tego zrobić. Więc nie używam FragmentActivity nawet w przypadku tab. –