Podczas pracy z fragmentami korzystałem z klasy złożonej ze statycznych metod, które definiują działania na fragmentach. Dla każdego projektu mogę mieć klasę o nazwie FragmentActions
, która zawiera metody podobne do następujących:
public static void showDeviceFragment(FragmentManager man){
String tag = AllDevicesFragment.getFragmentTag();
AllDevicesFragment fragment = (AllDevicesFragment)man.findFragmentByTag(tag);
if(fragment == null){
fragment = new AllDevicesFragment();
}
FragmentTransaction t = man.beginTransaction();
t.add(R.id.main_frame, fragment, tag);
t.commit();
}
Zazwyczaj mam jedną metodę na ekran aplikacji. Robię coś takiego podczas pracy z małymi lokalnymi bazami danych (zwykle SQLite), więc zastosowałem to do fragmentów, które wydają się mieć podobny przepływ pracy; Ale nie jestem z tego żonaty.
W jaki sposób zorganizowałeś swoje aplikacje, aby współpracowały z interfejsem API Fragments i jakie (jeśli w ogóle) wzorce projektowe uważasz, że możesz to zrobić?