Obtenir le contexte d'activité dans un adaptateur à partir d'un fragment
J'ai un Fragment
avec un ListView
. Dans l'adaptateur, je voudrais créer une boîte de dialogue.
class ViewHolder {
...
@Override
public void onClick(View v) {
...
AlertDialog.Builder builder = new AlertDialog.Builder(mContext);
...
}
...
}
mContext
est le Context
de mon Fragment
je save global lorsque l'adaptateur est créé.
Je reçois le message d'erreur.
unable to add window -- token null is not for an application
La méthode getActivity()
n'est pas disponible donc comment obtenir le Context
de mon Activity
?
source d'informationauteur AdrianoCelentano
Vous devez vous connecter pour publier un commentaire.
Lors de la création de votre carte, ce que vous êtes de passage en tant que contexte? Essayez de passer
this
si vous ne le faites pas. Certains plus de code serait utile aussi.Si vous avez un adaptateur personnalisé, modifiez le constructeur d'exiger
Context
en tant que paramètre.Ensuite, créez une Instance de la variable pour stocker le contexte par le constructeur.
Et maintenant, vous pouvez utiliser la variable
mContext
à partir de n'importe où dans votre carte.Pour créer la carte, il suffit de passer 'cette' si elle est créée à partir d'une activité, ou
getActivity()
si elle est créée à partir d'un fragment.Espère que ça aide.
Sur mon adaptateur listview