Запуск пользовательских активности onBackpressed активности запусков в два раза

голоса
0

У меня это действительно странная проблема, я не могу достаточно обернуть вокруг моей головы. Я размышлял над этим в течение нескольких часов, и у меня нет абсолютно никакой подсказки, почему мой код ведет себя так.

У меня есть , Viewpagerиз которого изображения могут быть удалены, чтобы дать иллюзию реального времени обновления я открываю такую же активность , каждый раз , когда фотография будет удалена , так что viewpager'sсодержание будет меняться сразу и , соответственно.

По этой причине я переопределен , onBackPressed()чтобы убедиться , что , когда этот метод инициируется пользователь возвращается к реальной прошлой деятельности и не активности с исходными изображениями. Я читал сообщения об этом и пытался делать такие вещи, как удалить супер методы и добавить метод отделки () , но ничего не похоже на работу.

@Override
public void onBackPressed() {

    //creates two instances of AccountApartementActivity

    overridePendingTransition(0, 0);

    add_button_view.setVisibility(View.INVISIBLE);
    delete_button_view.setVisibility(View.INVISIBLE);

    Intent i = new Intent(ApartementEditActivity.this, AccountAndApartementActivity.class);
    i.setFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);
    i.putExtra(fromActivity, 2);
    startActivity(i);
    finish();
    overridePendingTransition(0, 0);

}

Ни в одном из методов жизненного цикла эти два вида деятельности Я переопределен я написал код, который указует приложение создать такую ​​же активность в два раза, или я как-то вид его.

Weirdest то, что это работало нормально только день назад , но сегодня я изменил тип данных одного из моих переменных внутри моего PagerAdapterметода и с тех пор onBackPressed()метод был нарушен.

Пожалуйста, дайте мне знать, если я пропускаю что-то очевидное, это случается много.

Задан 07/11/2018 в 20:08
источник пользователем
На других языках...                            


1 ответов

голоса
0

Я думаю, что это не лучшая практика, чтобы манипулировать деятельность складывают таким образом. Вы могли бы в конечном итоге запустить из памяти.

Я не знаю, как организованы ваши фотографии, может быть, с контейнерным макетом как GridView или recyclerview?

Затем вы должны обновлять представления с адаптером и методом notifyDataSetChanged.

Удачи !

Ответил 07/11/2018 в 20:35
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more