Lancement de l'activité personnalisée onBackpressed lance une activité deux fois

voix
0

J'ai ce problème vraiment bizarre, je ne peux pas tout à fait envelopper la tête autour. Je réfléchis à ce pendant des heures et je n'ai absolument aucune idée pourquoi mon code se comporte comme celui-ci.

J'ai à Viewpagerpartir de laquelle les images peuvent être supprimées, afin de donner l'illusion du temps réel la mise à jour j'ouvre la même activité à chaque fois qu'une photo est supprimée de sorte que le viewpager'scontenu changera immédiatement et en conséquence.

Pour cette raison , je l' ai substituée onBackPressed()à faire en sorte que lorsque cette méthode est lancée l'utilisateur retourne à la vraie activité passée et non pas l'activité avec les images originales. J'ai lu les messages à ce sujet et ai essayé de faire des choses telles que supprimer la méthode super et ajoutez la méthode finish () , mais rien ne semble fonctionner.

@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);

}

Dans aucune des deux méthodes du cycle de vie des activités que j'ai-je le code de substitution écrit qui indique à l'application de créer la même activité deux fois, ou je suis en quelque sorte avec vue sur elle.

Chose la plus étrange est que cela a bien fonctionné il y a à peine jour , mais aujourd'hui j'ai changé le type de données d'un de mes variables dans ma PagerAdapterméthode et depuis la onBackPressed()méthode a été brisée.

S'il vous plaît laissez-moi savoir si je manque quelque chose d'évident, il arrive beaucoup.

Créé 07/11/2018 à 20:08
source utilisateur
Dans d'autres langues...                            


1 réponses

voix
0

Je pense que ce n'est pas la meilleure pratique pour manipuler les activités pile de cette façon. Vous pourriez éventuellement manquer de mémoire.

Je ne sais pas comment sont organisées vos photos, peut-être avec une disposition de conteneurs comme un gridview ou un recyclerview?

Ensuite, vous devez mettre à jour des vues avec l'adaptateur et la méthode notifyDataSetChanged.

Bonne chance !

Créé 07/11/2018 à 20:35
source utilisateur

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