Как мы можем идеально переключаться между фрагментами без воссоздания. Я использую приведенный ниже код для переключения ч / б двух фрагментов. В первом фрагменте я реализовал фид-посты, используя http-запрос в onViewCreated () фрагментов. И у меня есть второй фрагмент с некоторыми другими параметрами. Но когда я переключаюсь на первый фрагмент со второго ... httpRequest руководителей снова и дублирует
Подача элементов. Но когда я переключаюсь на второй фрагмент с первого, это не происходит.
Я использую это как
FragmentUtils.changeFragment (fragHome, R.id.mobile_container,
правда, (AppCompatActivity) getActivity ());
public static void changeFragment(Fragment frag,int v, boolean saveInBackstack,AppCompatActivity a) {
String backStateName = ((Object) frag).getClass().getName();
try {
FragmentManager manager = a.getSupportFragmentManager();
boolean fragmentPopped = manager.popBackStackImmediate(backStateName, 0);
if (!fragmentPopped && manager.findFragmentByTag(backStateName) == null) {
FragmentTransaction transaction = manager.beginTransaction();
transaction.replace(v, frag, backStateName);
if (saveInBackstack) {
Log.d(TAG, "Change Fragment: addToBackTack " + backStateName);
transaction.addToBackStack(backStateName);
} else {
Log.d(TAG, "Change Fragment: NO addToBackTack");
}
transaction.commit();
} else {
// custom effect if fragment is already instanciated
}
} catch (IllegalStateException exception) {
Log.w(TAG, "Unable to commit fragment, could be activity as been killed in background. " + exception.toString());
}
}