Auf eine TextView zugreifen

  • Antworten:4
  • OffenNicht stickyNicht beantwortet
  • Forum-Beiträge: 16

20.05.2010 15:52:17 via Website

Hallo Zusammen,

ich bin gerade etwas am Verzweifeln, ich hab eine TextView in einer bar.xml definiert. Sie sieht folgender massen aus:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
android:id="@+id/widget44"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
xmlns:android="http://schemas.android.com/apk/res/android"
>
<TextView
android:id="@+id/barname"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textSize="30sp"
android:textStyle="bold"
android:layout_marginTop="5dp"
android:layout_marginLeft="5dp"/>
</LinearLayout>

Und jetzt würde ich gerne in der Klasse BarDetails einen Text in diese TextView schreiben, der Code ist folgender massen:

TextView test = (TextView) findViewById(R.id.barname);
if (test != null) {
test.setText("Test Bar");
setContentView(test);
}

weiter oben im Code setze ich ich die View auf die bar.xml mit dieser Zeile:
setContentView(R.layout.bar);

Was mache ich falsch?
Bzw. habt ihr eine Weiter Idee was ich noch ausprobieren könnte?

LG
Hannah

Antworten
  • Forum-Beiträge: 16

20.05.2010 15:58:59 via Website

/* Create and modify titlebar */
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
setContentView(R.layout.bar);
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.custom_title);

ImageView button1 = (ImageView)findViewById(R.id.button1);
button1.setImageResource(R.drawable.button_back);
button1.setOnClickListener(new OnClickListener() {
public void onClick(View arg0) {
finish();
}
});
TextView test = (TextView) findViewById(R.id.barname);
if (test != null) {
test.setText("Test Bar");}

wird in diesem Teil des Codes gemacht und das andere setContenView war dann nur noch ein letzter Versuch ... da ich momentan nicht genau weiß was ich falsch mache!

Antworten
  • Forum-Beiträge: 16

20.05.2010 16:04:21 via Website

Erstmal vielen Dank für die Schnelle Antwort, das ist ja echt Spitze!
Jetzt hab ich aber doch noch eine kleine Frage zum Verständnis.
In einer anderen Datei, sieht der Quellcode folgender massen aus:

public View getView(int position, View convertView, ViewGroup parent) {
View v = convertView;
if (v == null) {
LayoutInflater vi = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
v = vi.inflate(R.layout.row, null);
}
Bar o = items.get(position);
if (o != null) {
TextView tb = (TextView) v.findViewById(R.id.topBarname);
TextView tt = (TextView) v.findViewById(R.id.topTime);
TextView bk = (TextView) v.findViewById(R.id.bottKm);
if (tb != null) {
tb.setText(o.getName());
}
if (tt != null) {
tt.setText("Zeit: 17 - 20 Uhr");
}
if(bk != null){
bk.setText("Entfernung: "+ o.getStreet());
}

}
return v;
}

da kann ich Abfragen ob die TextView != null ist und bei dem Beispiel gerade eben nicht. Hat das mit dem LayoutInflater was zu tun? Ansonsten verstehe ich das leider nicht!

Antworten