Sentenza
Erfahrenes Mitglied
- 83
Hi ho
Ich erzeuge testweise Views (die als Button verwendet werden sollen) zur Laufzeit (im Programmcode eines Kontextmenüs):
Zum freigeben nutze ich (ebenfalls testweise) den OnClickListener:
Das klappt auch wunderbar. Nur frage ich mich, als Java-Neuling, ob das Ding damit auch wirklich weg ist. Soweit ich es verstanden habe, werden Objekte in Java automatisch freigegeben sobald es keine Referenz mehr gibt. Mit removeView sollte ja zumindest die Referenz, die in meiner TermineView enthalten war, gelöscht werden - doch gibt es eventuell weitere? Im Context z.B.?
Und kann man das irgendwo überprüfen, welche Objekte noch im Speicher sind, um eventuelle Lecks zu erkennen?
Ich erzeuge testweise Views (die als Button verwendet werden sollen) zur Laufzeit (im Programmcode eines Kontextmenüs):
Code:
LinearLayout neu = new LinearLayout(this);
neu.setBackgroundResource(R.drawable.knopf1_green);
TermineView.addView(neu);
TextView test = new TextView(this);
test.setText("TEST");
neu.addView(test);
neu.setOnTouchListener(this);
neu.setClickable(true);
neu.setOnClickListener(this);
Code:
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
TermineView.removeView(v);
}
Und kann man das irgendwo überprüfen, welche Objekte noch im Speicher sind, um eventuelle Lecks zu erkennen?