La question de l'Android TableLayout
-
30-09-2019 - |
Question
J'utilise TableLayout pour afficher les données. Texte des TextViews de la colonne de droite sera définie lors de l'activité appelle onCreate ().
Maintenant, comme vous pouvez le voir dans l'image que mon texte d'adresse peut être longue et il devrait être enveloppé.
Je me suis donc android:layout_width="wrap_content"
. mais il prend encore une largeur de taille de l'écran des données d'enveloppe.
Comment puis-je surmonter de cette question?
Mon xml:
<?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"
android:padding="5px">
<TableRow>
<TextView android:text="Job#"
android:paddingRight="5px" />
<TextView android:id="@+id/DetailJobNo" />
</TableRow>
<TableRow>
<TextView android:text="Address"
android:paddingRight="5px" />
<TextView android:id="@+id/DetailAddress"
android:layout_width="wrap_content"
android:text="Address Address Address Address Address Address Address Address "/>
</TableRow>
</TableLayout>
La solution
Ajout android:shrinkColumns="1"
à TableLayout résout mon problème.
Autres conseils
Pouvez-vous essayer de régler setHorizontallyScrolling le DetailAdress
TextView false?
@Vikas, sa bonne que vous avez résolu votre problème.
Je recommande toujours d'utiliser HorizontalScrollView à des fins de sécurité. Si à tous les quelques caractères sont scrollbar pas visibles, horizontal vous aidera à gérer cela. texte XML:
<HorizontalScrollView android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp" android:layout_marginBottom="10dp" >
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="5px">
......
......
ADD YOUR ROWS
</TableLayout>
</HorizontalScrollView>
Il est toujours préférable de prendre soin de l'inattendu.