Правый выравнивающий столбец в таблице таблиц Android
Я хочу нарисовать таблицу, в которой последний столбец должен находиться в самой правой части таблицы.
Вот как выглядит строка таблицы:
Admin (2)New
Network (2)New
И так должно быть:
Admin (2) New
Network (2) New
XML:
<?xml version="1.0" encoding="utf-8"?>
<!-- row.xml -->
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:layout_height="45dp"
android:gravity="center" android:background="@color/list_bg">
<TableLayout android:layout_width="fill_parent"
android:layout_height="wrap_content">
<TableRow>
<ImageView android:id="@+id/t1" android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView android:id="@+id/t2" android:typeface="normal"
android:singleLine="true" android:textSize="14sp" android:textStyle="normal"
android:layout_width="wrap_content" android:textColor="#000000"
android:layout_height="wrap_content" />
<TextView android:id="@+id/t10" android:typeface="normal"
android:singleLine="true" android:text=" " android:textSize="14sp"
android:textStyle="normal" android:layout_width="wrap_content"
android:textColor="#000000" android:layout_height="wrap_content" />
<TextView android:id="@+id/t4" android:typeface="normal"
android:visibility="gone" android:singleLine="true" android:text="("
android:textSize="14sp" android:textStyle="normal"
android:layout_width="wrap_content" android:textColor="#000000"
android:layout_height="wrap_content" />
<TextView android:id="@+id/t5" android:typeface="normal"
android:visibility="gone" android:singleLine="true"
android:textSize="14sp" android:textStyle="normal"
android:layout_width="wrap_content" android:textColor="#000000"
android:layout_height="wrap_content" />
<TextView android:id="@+id/t6" android:typeface="normal"
android:visibility="gone" android:singleLine="true" android:text=")"
android:textSize="14sp" android:textStyle="normal"
android:layout_width="wrap_content" android:textColor="#000000"
android:layout_height="wrap_content" />
<ImageView android:id="@+id/t3" android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView android:id="@+id/t7" android:typeface="normal"
android:visibility="visible" android:singleLine="true" android:text="New"
android:textSize="14sp"
android:textStyle="normal" android:layout_width="wrap_content"
android:textColor="#000000" android:layout_height="wrap_content" />
</TableRow>
</TableLayout>
</RelativeLayout>
В этом xml t7 должно быть справа в правой части таблицы, как это сделать???
Ответы
Ответ 1
Здесь вы должны сделать
-
установите ширину строки таблицы fill_parent
-
и установите android:layout_gravity="right"
в текстовое представление, которое вы хотите выровнять прямо в строке таблицы
---- или ----
- добавьте вес в текстовое представление внутри строки таблицы, чтобы они могли согласовать, как вы хотите.
Ответ 2
- android: stretchColumns = "x" , где x - это столбец, который вы хотите заполнить
- android: layout_width = "fill_parent" , чтобы обеспечить заполнение экрана.
- android: layout_gravity = "right" для компонента вида в столбце "x"
Пример (псевдокод):
<TableLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:stretchColumns="1">
<TableRow>
<TextView android:text="Left Column" />
<TextView android:layout_gravity="right|center_vertical" android:text="Right Adjusted Column" />
</TableRow>
</TableLayout>