Pierwsze pytanie na przepełnienie stosu, przepraszam, jeśli nie jest dobrze uformowane.Android - jak zrobić złożoną aplikację z zakładkami z widokami
Pracuję nad stosunkowo złożoną aplikacją z kartami, która już zawiera podstawowe informacje, zanim przejdzie do informacji, że ActivityGroup i TabActivity są przestarzałe, a preferowanym modelem jest używanie widoków.
Nie miałem problemów z wykorzystaniem widoków, to jest pytanie o architekturę zamiast składni (dlatego nie opublikowałem żadnego kodu). W szczególności, , w jaki sposób powinienem przejść do restrukturyzacji aplikacji, aby korzystać z widoków zamiast Intent uruchomionych działań.
Aplikacja ma pięć zakładek; dwa posiadają jeden układ, nie ma problemu. Pozostałe trzy zakładki uruchamiają grupę Activity z 2-5 różnymi Aktywnościami (tj. Zakładką uruchamiającą działanie dla ustawień, gdzie kliknięcie każdego z podglądów rozpoczyna nową Czynność zajmującą to konkretne ustawienie, naciśnięcie przycisku Wstecz powoduje powrót do szerszych ustawień aktywność/widok). Gdybym miał zachować każdą kartę jako TabActivity, nadal byłoby dość łatwo zmienić te wewnętrzne przejścia na widoki, a nie osobne Działania.
Głównym pytaniem jest użycie TYLKO widoków, bez grupy TabActivity/Activity. Ogromna większość badań, które przeprowadziłem, była dyskusja o tym, czy używać działań lub widoków, czy o określonej składni. Nie byłem w stanie zebrać jasnego pomysłu, jak faktycznie przejść do widoków w całej aplikacji.
Gdybym miał to zrobić, nie cała aplikacja teraz być uruchomiony w jednym aktywny - jeden gospodarzem kartach układ?
Jeśli (1) jest prawdziwe, jak to zrobić? Pomimo wycofania ActivityGroup, cała dokumentacja Androida nadal wydaje się stwierdzać, że preferowane jest używanie oddzielnych działań dla osobnych aspektów funkcjonalności - co ma sens. Czy zespół programistów Androida po prostu zdecydował, że koszty związane ze stosem i urządzeniem uniemożliwiły wdrożenie TabActivity?
Jeśli aplikacja działa w jednym działaniu, które zarządza różnymi widokami dla każdej karty (a następnie różnymi widokami W ZAKRESIE karty), czy powinienem mieć jedną ogromną metodę onClick do obsługi wszystkich kliknięć z dowolnego klikalnego widoku, obsługa danych wejściowych na podstawie tego, który widok jest aktywny? Czy powinienem programowo zarejestrować i wyrejestrować wszystkich moich Słuchaczy?
Czy podczas pojedynczej aktywności żaden odbiornik kliknięcia ani żaden odbiornik nie będą działać przez cały czas, pochłaniając zasoby nawet wtedy, gdy niepotrzebne?
Po naciśnięciu jednego przycisku przycisk Wstecz spowoduje zamknięcie całej aplikacji z dowolnego miejsca w jej funkcjonalności. Jeśli używam widoków, czy nie muszę konsekwentnie zastępować onBackPressed() i ostrożnie zarządzać zachowaniem aplikacji, aby zmusić ją do zachowania "jak aplikacja dla systemu Android?"
AM MYŚLĘ O TYM CAŁKOWICIE NIEPRAWIDŁOWY? Możliwe, że nieumyślnie próbuję odtworzyć funkcjonalność ActivityGroup i TabActivity, korzystając z widoków, kiedy powinienem przyjmować całkowicie odmienne podejście do korzystania z kart i widoków.
Kiedy ludzie w Google powiedzieć, że nie należy korzystać z działalności prowadzonej na kartach już i pan Mark Murphy więc zdecydowanie zgadza się, jestem skłonny uwierzyć.Po prostu nie udało mi się znaleźć sposobu na zmianę, bez konieczności ręcznego odtwarzania wielu funkcji aktywności (co prawdopodobnie zawierałoby wiele brudnych hacków).
Docenianie z góry dla każdego, kto chce rozwiązać ten niejasny i nadpisany temat.
naprawdę doskonałe pytanie ... witamy w Stack. –