Выровнять текстовые столбцы по вертикали при использовании специального адаптера / layoutinflator - PullRequest
1 голос
/ 21 марта 2012

У меня есть три столбца, которые я хочу выровнять по вертикали.Данные для столбцов извлекаются с использованием объекта, а затем отображаются с использованием LayoutInflater.

. В настоящее время столбцы расположены повсеместно.Я надеюсь, что они будут идеально выровнены.Я использую TextView, но начинаю задаваться вопросом, не следует ли мне использовать какой-то TableLayout.

enter image description here Вот XML:

<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/table_layout"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">

    <ListView
        android:id="@android:id/list"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1" />

    <TableRow android:id="@+id/row_multi_row">

        <TextView
            android:id="@+id/item1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:padding="3dip"
            android:textAppearance="?android:attr/textAppearanceLarge" />

        <TextView
            android:id="@+id/item2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:padding="3dip"
            android:textAppearance="?android:attr/textAppearanceLarge" />

        <TextView
            android:id="@+id/item3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:padding="3dip"
            android:textAppearance="?android:attr/textAppearanceLarge" />

    </TableRow>
</TableLayout>

Ответы [ 2 ]

1 голос
/ 30 ноября 2016

enter image description here Попробуйте это:

<TableRow xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/row_multi_row"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:weightSum="1">

<TextView
    android:id="@+id/item1"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_weight="0.34"
    android:padding="3dip"
    android:text="asdasd"
    android:gravity="center"
    android:textAppearance="?android:attr/textAppearanceLarge" />

<TextView
    android:id="@+id/item2"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_weight="0.34"
    android:padding="3dip"
    android:gravity="center"
    android:text="adasd"
    android:textAppearance="?android:attr/textAppearanceLarge" />

<TextView
    android:id="@+id/item3"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_weight="0.32"
    android:padding="3dip"
    android:gravity="center"
    android:text="asdasdad"
    android:textAppearance="?android:attr/textAppearanceLarge" />

0 голосов
/ 21 марта 2012

установить всю ширину текстового обзора и ширину строки табуляции для заполнения родительского элемента и использовать layout_weight = "1" Это будет работать

...