Ich habe folgendes Problem: Ich möchte eine benutzerdefinierte Ansicht (custom_view.xml und die zugehörige Klasse CustomView.java) zu meiner Hauptaktivität hinzufügen.
Ich mache also Folgendes:
1) In meiner Hauptaktivität (verlinkt mit main.xml):
CustomView customView = new CustomView(this);
mainView.addView(customView);
2) In meiner Klasse CustomView.java (die ich mit custom_view.xml verknüpfen möchte):
public class CustomView extends View {
public CustomView(Context context)
{
super(context);
/* setContentView(R.layout.custom_view); This doesn't work here as I am in a class extending from and not from Activity */
TextView aTextView = (TextView) findViewById(R.id.aTextView); // returns null
///etc....
}
}
Mein Problem ist, dass aTextView gleich Null bleibt... Es scheint eindeutig an der Tatsache zu liegen, dass meine custom_view.xml nicht mit meiner CustomView.java Klasse verknüpft ist. Wie kann ich diese Verknüpfung herstellen? Ich habe es mit setContentView(R.layout.custom_view) versucht, aber es funktioniert nicht (Kompilierungsfehler), da meine Klasse von der Klasse View und nicht von der Klasse Activity abgeleitet ist.
Vielen Dank für Ihre Hilfe!
0 Stimmen
Sollten Sie Ihr xml nicht irgendwann aufblasen?
0 Stimmen
Danke njzk2. Es scheint, dass ich meine xml aufblasen sollte. Wie kann ich das tun? (Danke für Ihre Antwort, falls ich keinen Blog zu diesem Thema finde)