Dans mon application, j'ai besoin de données qui sont accessibles pour quelques activités. J'ai lu qu'une bonne solution est d'utiliser la classe Application
pour cela. Donc, je l'utilise comme ceci:Accès Classe d'application de la classe autre que l'activité
public class MyApplication extends Application {
private String str;
public String getStr(){
return str;
}
public void setStr(String s){
str = s;
}
}
et je peux accéder à cette variable d'activité comme celle-ci:
MyApplication appState = ((MyApplication)getApplicationContext());
String str = appState.getStr();
Il est ok, mais j'ai aussi classe parser xml:
public class MyXMLHandler extends DefaultHandler {
et si j'essaie de faire la même chose ici
MyApplication app = ((MyApplication)getApplicationContext());
String str = app.getStr();
Je reçois The method getApplicationContext() is undefined for the type MyXMLHandler
Comment puis-je accéder à ma variable?
Ok, merci, je pense que vous avez raison. Je ne voulais pas passer de paramètres du contexte à l'analyseur, je voulais juste que l'analyseur interprète les résultats de l'analyse en classe Application, car j'ai besoin de ces résultats dans quelques activités. Je vais le faire dans l'autre sens, je vais retourner les résultats de l'analyseur à l'activité de l'appelant, puis les écrire à l'application. Est-ce une approche correcte? Merci – Burjua
Eh bien, ça me semble bien :-) –
Ok, merci)) – Burjua