Закрытие приложения с помощью OnBackPressed в Fragment
Как сделать чтобы перейдя в Fragment при нажатии OnBackPressed приложение полностью закрывалось?
Написал вот такой код, но он не работает.
public class FragmentRink extends Fragment {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment_rink, container, false);
}
@Override
public void onViewCreated(@NonNull final View view, @Nullable Bundle savedInstanceState) {
}
public void onBackPressed() {
requireActivity().moveTaskToBack(true);
requireActivity().finish();
}
}
Ответы (2 шт):
Автор решения: AVRamones
→ Ссылка
Добавьте в метод onCreate() вроде должно работать.
OnBackPressedCallback callback = new OnBackPressedCallback(true) {
@Override
public void handleOnBackPressed() {
Intent homeIntent = new Intent(Intent.ACTION_MAIN);
homeIntent.addCategory(Intent.CATEGORY_HOME);
homeIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(homeIntent);
}
};
requireActivity().getOnBackPressedDispatcher().addCallback(this, callback);
Автор решения: Barmaley
→ Ссылка
Ну можно кувалдой заколотить:
public void onBackPressed() {
super.onBackPressed();
android.os.Process.killProcess(android.os.Process.myPid());
}