Hermann S.
- Forum-Beiträge: 45
01.04.2011, 17:14:44 via Website
01.04.2011 17:14:44 via Website
Hallo, ich versuche ein kleines Beispiel zum TableLayout ausschließlich in Java zu realisieren. Leider scheitere ich an dem Attribut android:layout_column. Dafür scheint es keine Methode zu geben. Wie wird das in Java gelöst, wenn man ein Widget gezielt in einer bestimmten Spalte haben möchte?
Hier ist mein unfertiges zwei Zeilen Beispiel, in dem ich das zweite Widget leider nicht in die zweite Spalte bekommen konnte.
EDIT: Hab es leider doch noch durch Probieren raus gefunden, entschuldigt die Frage. Der Column-Parameter liegt in der Klasse TableRow, hab den warum auch immer im TableLayout gesucht .
Lösung ist einfach:
Hier ist mein unfertiges zwei Zeilen Beispiel, in dem ich das zweite Widget leider nicht in die zweite Spalte bekommen konnte.
1public static ViewGroup tableBsp(Activity ma) {
2
3 TableLayout table = new TableLayout(ma);
4 table.setStretchAllColumns(true);
5
6 TableRow tr = new TableRow(ma);
7 TextView txt = new TextView(ma);
8 txt.setText("Zeile0/Spalte0");
9 tr.addView(txt);
10 table.addView(tr);
11
12 tr = new TableRow(ma);
13 txt = new TextView(ma);
14 txt.setText("Zeile1/Spalte1");
15 tr.addView(txt);
16 table.addView(tr);
17
18 return table;
19 }
2
3 TableLayout table = new TableLayout(ma);
4 table.setStretchAllColumns(true);
5
6 TableRow tr = new TableRow(ma);
7 TextView txt = new TextView(ma);
8 txt.setText("Zeile0/Spalte0");
9 tr.addView(txt);
10 table.addView(tr);
11
12 tr = new TableRow(ma);
13 txt = new TextView(ma);
14 txt.setText("Zeile1/Spalte1");
15 tr.addView(txt);
16 table.addView(tr);
17
18 return table;
19 }
EDIT: Hab es leider doch noch durch Probieren raus gefunden, entschuldigt die Frage. Der Column-Parameter liegt in der Klasse TableRow, hab den warum auch immer im TableLayout gesucht .
Lösung ist einfach:
1tr = new TableRow(ma);
2 txt = new TextView(ma);
3 txt.setText("Zeile1/Spalte1");
4 TableRow.LayoutParams trlp = new TableRow.LayoutParams();
5 trlp.column = 1;
6 tr.addView(txt, trlp);
7 table.addView(tr);
2 txt = new TextView(ma);
3 txt.setText("Zeile1/Spalte1");
4 TableRow.LayoutParams trlp = new TableRow.LayoutParams();
5 trlp.column = 1;
6 tr.addView(txt, trlp);
7 table.addView(tr);
— geändert am 01.04.2011, 17:29:49
Empfohlener redaktioneller Inhalt
Mit Deiner Zustimmung wird hier ein externer Inhalt geladen.
Mit Klick auf den oben stehenden Button erklärst Du Dich damit einverstanden, dass Dir externe Inhalte angezeigt werden dürfen. Dabei können personenbezogene Daten an Drittanbieter übermittelt werden. Mehr Infos dazu findest Du in unserer Datenschutzerklärung.