Hallo zusammen,
wieder mal viel gelesen und gegooglt, aber ich finde keine Lösung:
Aber ich denke ganz einfach...
Klasse Test1Activity:
Von hier will ich auf ein Objekt der Klasse Mail zugreifen (Mailversand vorbereiten etc.)
Anschließend will ich das Ergebnis dann in den Textviews darstellen, die in dem View zu Test1Activity existieren....
Klasse Mail
Problem ist jetzt, daß ich die Textviews in der Klasse Mail nicht direkt ansprechen kann. Ich will also das irgendwie klassenübergreifend machen. Also was in einem Objekt von Mail vorbereiten und dann im Textview von Test1Activity darstellen.
Das ist doch gängige Praxis denke ich? Kann doch so schwer nicht sein?!?!
Eine andere Methode macht nix mit Darstellung, da klappt die Kommuniktion zwischen den beiden Klassen prima...
Wie mache ich das?
getResources() ??
Intents und alle Klassen zu Activities machen?
Klitzekleines Codebeispiel wäre nett, dann hat das rätseln ein Ende...
btw: Muss in einer Adroid App immer jede Klasse eine Activity sein, oder kann es auch Klassen geben, die keine Activity sind? Sprich so wie ich das gemacht hab (Klasse Mail --> erbt nicht von Activity!)
wieder mal viel gelesen und gegooglt, aber ich finde keine Lösung:
Aber ich denke ganz einfach...
Klasse Test1Activity:
Von hier will ich auf ein Objekt der Klasse Mail zugreifen (Mailversand vorbereiten etc.)
Anschließend will ich das Ergebnis dann in den Textviews darstellen, die in dem View zu Test1Activity existieren....
Java:
class Test1Activity() {
public mail() {
Mail mail = new Mail();
}
public void machNochWas() {
String strMail = mail.vorbereitenEMail(a, b, c);
sendenEMail(strMail);
Textview textviewOrdnungsamt
textviewOrdnungsamt = (TextView) findViewById(R.id.textviewOrdnungsamt);
...
if (strPLZ != strPLZOld) {
mail.setzeEmailadresseOrdnungsamt(strPLZ, strOrt, strStrasse);}
...
}
Klasse Mail
Java:
public class Mail{
public void mail(Context context) {
//ab hier beginnt mein rumprobiere...
int resID = getResources().getIdentifier("textviewOrdnungsamt",
"id", getPackageName());
int id = this.getResources().getIdentifier(NameDerVariablen, "Drawable", NameDeinesPackages);
img.setImageResource(id);
//bis hier ist alles Testerei ohne Erfolg... :-(
}
String vorbereitenEMail(String a, String b, String c) {...}
//weitere Methoden...
//und hier die Methode mit der ich versuche den textview aus Test1Activity zu füllen/beschreiben...
public void setzeEmailadresseOrdnungsamt(String d, String e) {
textviewOrdnungsamt = (TextView) findViewById(R.id.textviewOrdnungsamt);
}
Problem ist jetzt, daß ich die Textviews in der Klasse Mail nicht direkt ansprechen kann. Ich will also das irgendwie klassenübergreifend machen. Also was in einem Objekt von Mail vorbereiten und dann im Textview von Test1Activity darstellen.
Das ist doch gängige Praxis denke ich? Kann doch so schwer nicht sein?!?!
Eine andere Methode macht nix mit Darstellung, da klappt die Kommuniktion zwischen den beiden Klassen prima...
Wie mache ich das?
getResources() ??
Intents und alle Klassen zu Activities machen?
Klitzekleines Codebeispiel wäre nett, dann hat das rätseln ein Ende...
btw: Muss in einer Adroid App immer jede Klasse eine Activity sein, oder kann es auch Klassen geben, die keine Activity sind? Sprich so wie ich das gemacht hab (Klasse Mail --> erbt nicht von Activity!)
Zuletzt bearbeitet: