これまではこのコードは機能していましたが、突然停止しました。フラグメントが親アクティビティから切り離されていません。断片を更新するandroid
public void reLoadFragment(Fragment fragment)
{
Log.i(LogGeneratorHelper.INFO_TAG, "reloading fragment");
// Reload current fragment
Fragment frg = null;
frg = getSupportFragmentManager().findFragmentByTag(fragment.getClass().getName());
frg.onDetach();
final FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
ft.detach(frg);
ft.attach(frg);
ft.commit();
Log.i(LogGeneratorHelper.INFO_TAG, "reloading fragment finish");
}
おかげで、私はそれがこのように動作しました。 サポートライブラリの更新後にft.detach()が機能しません25.1.0。このソリューションは、アップデート後に正常に動作します。 getSupportFragmentManager() .beginTransaction() .detach(oldFragment) .commitNowAllowingStateLoss(); getSupportFragmentManager() .beginTransaction() .attach(oldFragment) .commitAllowingStateLoss(); –
作品は挨拶します。 tnxの芽 – user3707644