Я разрабатываю андроид, в котором, когда я нажал кнопку возврата устройства, я перехожу к предыдущему фрагменту. Что я хочу добиться, так это то, что когда я нажал кнопку возврата устройства, я не хочу перейти к предыдущему фрагменту. Как я могу добиться.Как избежать фрагмента, возвращаясь к предыдущему фрагменту при нажатии кнопки возврата устройства?
Как избежать фрагмента, возвращаясь к предыдущему фрагменту при нажатии кнопки возврата устройства?
ответ
Вы должны делать вызов addtobackstack («имя») при добавлении или замены fragment.Remove этой функции перед вызовом следующего фрагмента вы не вернуться к предыдущему фрагменту for further desc
Не добавлять этот фрагмент в backstack из новый фрагмент, который вы вызываете. Посмотрите на приведенный ниже пример, который я использовал, чтобы объяснить вам, как это работает.
Чтобы сделать этот фрагмент прийти снова, просто добавьте этот фрагмент в backstack который вы хотите возвращайся нажимается, Например:
btnSignIn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Fragment fragment = new LoginFragment();
//replacing the fragment
if (fragment != null) {
FragmentTransaction ft = ((FragmentActivity)getContext()).getSupportFragmentManager().beginTransaction();
ft.replace(R.id.content_frame, fragment);
ft.addToBackStack("SignupFragment");
ft.commit();
}
}
});
В приведенном выше случае, я м открытие LoginFragment когда кнопка для входа в аккаунт является нажата, прямо сейчас в RegistrationFragment. Поэтому, если я вызываю addToBackStack (TAG), TAG = "RegistrationFragment", тогда, когда кнопка возврата нажата в LoginFragment, мы приходим к SignUpFragment. Счастливое кодирование!
Не используйте 'addToBackStack()' при загрузке фрагмента. – Rohit5k2
напишите свой код .. –