Връщам се към последния фрагмент върху бутона за връщане на приложението, както следва:
public void onClick(View view) {
FragmentManager fm = getFragmentManager();
if(fm.getBackStackEntryCount() > 0){
fm.popBackStack();
}
}
Как мога да получа достъп до фрагмента, който се отваря от стека и да го съхранява в променлива?
Отговори:
1 за отговор № 1Първо добавете транзакцията в backstack от
fragmentTransaction.addToBackStack(str_transaction_name);
Тогава ще можете да намерите фрагмента от TAG:
FragmentManager fragmentManager = getFragmentManager();
// Get the last transaction on the stack
FragmentManager.BackStackEntry backEntry=fragmentManager.getBackStackEntryAt(fragmentManager.getBackStackEntryCount()-1);
String str = backEntry.getName();
Fragment fragment = getFragmentManager().findFragmentByTag(str);
1 за отговор № 2
Трябва да можете да използвате
getFragmentManager().popBackStackImmediate();
за да преминете към предишния фрагмент (което искате да направите, ако разбирам правилно въпроса ви)
За повече информация как да използвате това, проверете документацията за Android тук FragmentManager