Das wird eine etwas lahme Frage sein. Ich habe folgenden Code:Android :: findViewByID - Wie kann ich View eines TextView über einen Listener eines anderen UI-Elements erhalten?
..............
public void onCreate (Bundle bundle)
{
super.onCreate(bundle);
this.setContentView(R.layout.main2);
Button bnt = (Button) this.findViewById(R.id.browser);
bnt.setOnClickListener(new ButtonListener());
}
..............
class ButtonListener implements android.view.View.OnClickListener
{
public void onClick(View v)
{
// I have a TextView in my xml layout file.
// I'd like to get it and change my text when I click this button.
// But I can't get it (the TextView) unless I make it as a value of a static member of this class and pass it to the constructor.
//I believe I am missing a big point here, so i'd be very thankful if you could explain how this is meant to be done ?
}
}
Jede Hilfe wird geschätzt.
Mein Punkt genau. View parent = (View) v.getParent() - Ich habe es so geschrieben - .getParent() gibt ein ViewParent-Objekt zurück. Trotzdem war genau das, wonach ich suchte. Vielen Dank. – George
Der robustere Weg wäre, Ihrem root-Layout-Element eine ID zu geben und eine 'findViewById()' in Ihrem 'onCreate()' zu machen. So haben Sie vollen Zugriff auf Ihr Layout und alle Ansichten im Inneren. Also hat Rahul die richtige Antwort gegeben ... benutze einfach das root-Element anstelle der textview – WarrenFaith