web-dev-qa-db-fra.com

Comment terminer une activité depuis un adaptateur ..?

J'ai essayé en passant context d'activité dans l'adaptateur puis j'ai essayé context.finish(); Mais ça me donne une erreur comme The method finish() is undefined for the type Context

52
Noby

tapez le lancer avec activité.

((Activity)context).finish();
192
Yashwanth Kumar

Essayez avec le code suivant:

public YourAdapterName(......,Context context){

...

this.myContext=context;
}

Et dans votre adaptateur getView ()

btn.setOnClickListener(new Button.OnClickListener() {

    @Override
    public void onClick(View v) {
        ((YourActivityName)myContext).yourDesiredMethod();

    }
});
7
raul_zevahc

Essayez de passer votre activité en tant que paramètre activity, vous pourrez alors appeler finish() dessus. J'espère que cela t'aides.

4
Egor

Le code pour cela est ((Activity)context).finish();et le code complet est

holder.cardUsers.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {
        Intent intent1=new Intent(mcontext,AstroChatPanel.class);
        intent1.putExtra("mobile",userslist.get(position).getMobile());
        intent1.putExtra("name",userslist.get(position).getName());
        intent1.putExtra("type","admin");
        mcontext.startActivity(intent1);
        ((Activity)mcontext).finish();
    }
});
1
Pradeep Sheoran

Tapez le nom de votre activité avec le contexte et terminez l'activité

0
DEEP ADHIYA

je ne l'ai pas utilisé mais j'espère que cela fonctionnera. utilisez: "this.recreate ()" si vous souhaitez le recharger depuis l'activité.

si vous voulez le recharger depuis l'adaptateur, utilisez: "((Activity) context) .recreate ()"

0
neens

Dans l'adaptateur, cela fonctionnera

((Activity)view.getContext()).finish();
0
yogesh mhetre