2012-09-12 19 views
7

w dokumentacji android.support.v4.app.FragmentManager.getSupportFragmentManager() kontra getFragmentManager() w Android 3.0+

„Static wersja wsparcie biblioteki ram za FragmentManager używany do pisania aplikacji, które działają na platformach przed wersją 3.0 systemu Android, działając pod numerem Android 3.0 lub nowszym, implementacja ta jest nadal używana, ale nie próbuje przełączyć się na implementację ramową. Zapoznaj się z dokumentacją zestawu SDK, aby uzyskać przegląd klas. "

Czy muszę zatem sprawdzać w środowisku uruchomieniowym i używać odpowiedniego menedżera FragmentManager w wersji na Androida, na której działa aplikacja? to jest wywołanie getFragmentManager(), jeśli na Android 3.0+ zamiast getSupportFragmentManager()

Odpowiedz

12

Nie ma nic złego w korzystaniu z getSupportFragmentManager() na Androidzie 3.0+, o ile zaimportowano bibliotekę wsparcia. Jeśli chcesz użyć zestawu getFragmentManager() dla zestawów SDK 11+, przejdź do niego; pamiętaj, że możesz być if/else wiele kodu z kontroli wersji.

+0

wszelkie pomysły jaka jest różnica między tymi dwoma menedżerami? Zalety wady? – user1159819

+0

Biblioteka wsparcia została zaprojektowana tak, aby dokładnie emulować funkcjonalność. Istnieje kilka drobnych drobnych różnic w połowie dokumentacji biblioteki wsparcia (http://developer.android.com/tools/extras/support-library.html). – Eric

+0

getSupportFragmentManager() pracował dla mnie docelowej wersji 15 dzięki .. –

5

Jeśli używasz API> = 14, użyj funkcji getFragmentManager(). Jeśli chcesz kompatybilność z urządzeniami poniżej API 14, możesz użyć getSupportFragmentManager(). Dlatego metoda getSupportFragmentManager() służy do dostarczania nowszych funkcji starszym platformom.

0

Jeśli korzystasz z pakietów pomocy w projekcie lub aplikacji, musisz użyć getSupportFragmentManager, ponieważ w ten sposób zwrócisz fragmentManager w celu interakcji z fragmentami powiązanymi z tym działaniem. Z drugiej strony, jeśli nie jesteś, możesz użyć getFragmentManager. Zależy tylko od tego, czego używasz w swojej aplikacji.

Powiązane problemy