У меня есть один класс User Activity, у которого есть меню ящика (включает домашнюю страницу, мой профиль и т. Д.).Когда пользователь щелкает один из пунктов меню, я загружаю такие фрагменты, как HomePageFragment, MyProfilFragment и т. Д.
Вот пример кода:
public void navigationItemSelectedListener(DrawerLayout drawerLayout, NavigationView navigationView) {
navigationView.setNavigationItemSelectedListener(menuItem -> {
menuItem.setChecked(true);
int menuId = menuItem.getItemId();
switch (menuId){
case R.id.home_menu_item:
loadFragment(new HomePageFragment());
break;
// goes like that
Вот loadFragment:
public void loadFragment(Fragment fragment) {
FragmentManager fragmentManager = getSupportFragmentManager();
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
fragmentTransaction.replace(R.id.user_page_activity_frame_layout, fragment);
fragmentTransaction.commit();
}
}
Теперь я запустил CountDownTimer (60 секунд) в HomePageFragment, когда счетчик равен 0, я буду запускать некоторые методы ().
Однако Я не могу этого сделать. Поскольку каждый раз, когда пользователь перемещается по новому элементу, затем, когда он возвращается к пункту меню HomePage, создается новый HomePageFragment (), поэтому CountDownTimer начинается снова и снова с 60 секунд.То, что я хочу, чтобы CounDownTimer запускался, даже если пользователь переходит в другое меню.
Обратите внимание, что я пытался создать атрибут HomePageFragment как глобальный.Но это не сработало.(Как 2 таймера обратного отсчета. Один говорит 60-59 ... другой говорит 30-29 ...)