Comment terminer une activité à partir d'un Adaptateur..?
j'ai essayé avec le passage context de l'activité dans l'adaptateur, puis j'ai essayé context.finish(); mais il me donne une erreur comme The method finish() is undefined for the type Context
8 réponses
tapez lancer avec activité.
((Activity)context).finish();
Essayer 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();
}
});
essayez de passer votre activité comme un activity paramètre, alors vous serez en mesure d'appeler finish(). Espérons que cette aide.
dans votre adaptateur personnalisé essayer d'appeler finish utiliser le code ci-dessous
((Activity)context).finish();
je n'ai pas utilisé, mais j'espère que cela va fonctionner. utiliser: "ce.recréer()" si vous voulez recharger de l'intérieur de l'activité.
si vous souhaitez recharger à partir de l'Adaptateur, puis utiliser: "((L'activité)contexte).recréer()"
fermer Activité Classe de la forme Adaptateur Personnalisé juste à la méthode
@Override
public void onClick(View v) {
MyApplication.value=mCompany.getCompanyId();
Intent intent = new Intent(MyApplication.context, VaasetActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.putExtra("ID_COMPANY",mCompany.getCompanyId());
MyApplication.context.startActivity(intent);
((Activity)context).finish();
}
});
Dactylographiez le nom de votre activité avec le contexte et terminez l'activité
Code pour ceci est ((Activity)context).finish();et le code complet
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();
}
});