1. ホーム
  2. android

[解決済み] 再読み込み時のフラグメントのリフレッシュ

2022-02-05 16:16:39

質問

アンドロイドのアプリケーションで、Dbからのデータを TableView の中に Fragment . しかし、再読み込みすると Fragment が表示され、以前のデータが表示されます。この場合 Fragment には、以前のデータではなく、現在のデータが入りますか?

どのように解決するのですか?

をしたいのではないでしょうか? データベース更新時にフラグメントの内容をリフレッシュする

その場合、フラグメントをデタッチし、再アタッチします。

// Reload current fragment
Fragment frg = null;
frg = getSupportFragmentManager().findFragmentByTag("Your_Fragment_TAG");
final FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
ft.detach(frg);
ft.attach(frg);
ft.commit();

Your_Fragment_TAG は、フラグメントを作成したときに付けた名前です。

このコードはサポートライブラリ用です。

古いデバイスに対応しない場合は、単に getFragmentManager の代わりに getSupportFragmentManager

[EDIT】をご覧ください。]

このメソッドでは、Fragmentにタグが必要です。
もし、それがない場合は、@Hammerのメソッドが必要です。