私は Fragments を勉強していて、微分FragmentTransaction.replace(id, fragment, tag)
とFragmentTransaction.addToBackStack(tag)
呼び出しについて少し混乱しました。現在のフラグメントがFragmentAで、 FragmentBをロードしたとしましょう。将来、 FragmentAをロードする必要があるときに、再ロードする必要はありません。古いものを古い状態でロードするだけです。次のコード セグメントを使用しました。
public void loadFragment(Fragment fragmentB, String tag) {
FragmentManager fm = getSupportFragmentManager();
View fragmentContainer = findViewById(R.id.fragment_container);
FragmentTransaction ft = fm.beginTransaction();
ft.replace(fragmentContainer.getId(), fragmentB, tag);
ft.addToBackStack(tag);
ft.commit();
}
今、私は混乱しています。文字列タグをどこに追加すればよいですか? replace()
コール内またはコール内または両方でaddToBackStack()
? この 2 つのタグの場所の違いを説明できますか?