フラグメントを操作するときは、フラグメントのアクションを定義する静的メソッドで構成されるクラスを使用しています。どのようなプロジェクトでもFragmentActions
、次のようなメソッドを含むというクラスがあるかもしれません。
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();
}
通常、アプリケーション画面ごとに1つのメソッドがあります。小さなローカルデータベース(通常はSQLite)で作業するときは、このようなことを行うので、それをフラグメントに適用しました。フラグメントには同様のワークフローがあるようです。私はそれと結婚していません。
Fragments APIとインターフェースするようにアプリケーションをどのように編成しましたか。また、どのようなデザインパターン(ある場合)を適用すると思いますか?
1
なぜすべての種類のフラグメントの表示を担当する1つのクラスがあるのですか?Fragmentクラスの内部の静的メソッドではないですか?
—
ピオトル