TableLayout Spaltenbreite

G

Gingerbread

Fortgeschrittenes Mitglied
6
Hallo,
habe mir eine Tabelle im TableLayout gebaut. Passt auch alles soweit.
Wenn ich nun etwas längere Variablen einfüge, dann wird die Spalte, in der die Variable eingefügt wird, nach rechts erweitert.
Wie kann ich es schaffen, dass die Spalten eine feste Größe besitzen?
Dann würden eine Zeile nach unten erweitert und nicht nach rechts.
 
du musst das textfeld der spalte beschränken
 
Meinst du mit android:maxwidth="wert"?
das habe ich auch schon versucht, hat aber auch nicht fukntioniert.
 
Noch nie jmd Daten in eine Tabelle eingetragen?
 
deine infos sind wohl auch sehr dürftig

zeig halt dein tablelayout mal her, dann kann man eher was finden.
bis jetzt ist mir hier noch kein hellseher untergekommen ;)
 
Ok also hier der Code aus der xml:
Code:
<?xml version="1.0" encoding="utf-8"?>
<TableLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent">
 
  
 <TableRow>
    <TextView
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"   
    android:paddingLeft="15dip"
    android:paddingTop="15dip"
    android:text="Montag"
    />
    
    <TextView 
    android:layout_height="wrap_content" 
    android:layout_width="wrap_content"  
    android:paddingLeft="30dip"
    android:paddingTop="15dip"
    android:text="Dienstag" 
    />
    
    <TextView 
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"   
    android:paddingLeft="50dip"
    android:paddingTop="15dip"
    android:text="Mittwoch" 
    />
</TableRow>

<TableRow>
    <TextView
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"
    android:paddingLeft="15dip"
    android:paddingTop="15dip"
    android:text="Fehler"
    android:id="@+id/au_mon"
 
    />
    
    <TextView 
    android:layout_height="wrap_content" 
    android:layout_width="wrap_content"
    android:paddingLeft="30dip"
    android:paddingTop="15dip"
    android:text="Fehler"
    android:id="@+id/au_die" 
    />
    
    <TextView 
    android:layout_height="wrap_content" 
    android:layout_width="wrap_content"    
    android:paddingLeft="50dip"
    android:paddingTop="15dip"
    android:text="Fehler" 
    android:id="@+id/au_mit"
    />
</TableRow>
</TableLayout>

Jetzt werden die Felder der zweiten Zeile per setText() geschrieben.
Jedoch ist das Problem, dass die anderen Spalten vom Bildschirm "gedrückt" werden.
Code:
Montag           Dienstag          Mittwoch

Fehler             Fehler             Fehler



Nach setText():

Montag                        Dienstag       Mittwoch

Dies ist ein langer Satz   Fehler          Fehler



Ich möchte aber folgendes haben:

Montag          Dienstag         Mittwoch

Dies ist ein     Fehler            Fehler
langer Satz
 
dann musst du deine textviews entsprechend ausrichten.

ich würde auch vom tablelayout abraten.

<Linearlayout vertical>
<LinearLayout horizontal>
<TextView
layout_width="0"
layout_weight="1">
<Textview wie vorher
...
</Linearlayout>
<nächste reihe

usw
 
Ok, habe ich jetzt gemacht. Also habe alles in ein normales LinearLayout gepackt.
Wie bekomme ich es nun hin, dass alle Spalten gleich groß sind?
 

Anhänge

  • 1.JPG
    1.JPG
    21,1 KB · Aufrufe: 380
mit layout_widht="0" und layout_weight="1" sollten sie sich den platz eigentlich dritteln.

musst damit ein wenig rumspielen.
 

Ähnliche Themen

M
  • mitch_HD2
Antworten
1
Aufrufe
549
mitch_HD2
M
X
Antworten
1
Aufrufe
742
Kardroid
Kardroid
T
Antworten
8
Aufrufe
2.227
Tersus
T
Zurück
Oben Unten