1

我在创建具有 4 列且水平跨越的表格布局时遇到问题。

我希望我的行看起来像这样:

苹果 | 200.00 | 图像分割器 | 1.53 (+1.5%)

我希望 200.00 以及 1.53(+1.5%) 右对齐。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent" android:layout_height="fill_parent"
    android:background="@drawable/stocks_gradient" android:orientation="horizontal">
    <TableLayout android:layout_width="wrap_content"
        android:layout_toLeftOf="@+id/priceText" android:layout_height="wrap_content"
        android:id="@+id/TableLayout01">
        <TableRow android:layout_width="wrap_content"
            android:layout_below="@+id/nameText" android:id="@+id/TableRow01"
            android:layout_height="wrap_content"></TableRow>
        <TextView android:id="@+id/nameText" android:layout_height="wrap_content"
            android:padding="5dip" android:layout_alignParentLeft="true"
            android:text="Symbol" android:textStyle="bold" android:textSize="24sp"
            android:layout_width="100dp" android:textColor="#4871A8" />
        <TextView android:id="@+id/priceText" android:layout_width="wrap_content"
            android:layout_height="wrap_content" android:padding="5dip"
            android:layout_toRightOf="@+id/nameText" android:gravity="right"
            android:text="100" android:textStyle="bold" android:textSize="24sp"
            android:textColor="#4871A8" />
        <ImageView android:layout_toLeftOf="@+id/changeText"
            android:id="@+id/verticalDivider" android:background="@drawable/vertical_divider"
            android:layout_width="wrap_content" android:layout_height="48dp"></ImageView>
        <TextView android:id="@+id/changeText" android:layout_height="wrap_content"
            android:layout_toRightOf="@+id/priceText" android:gravity="right"
            android:textSize="18sp" android:text="3.07(+1.08%)" android:padding="12dip"
            android:layout_width="fill_parent" />
    </TableLayout>
4

2 回答 2

2

android:layout_toLeftOfandroid:layout_toRightOfandroid:layout_below是用于 RelativeLayout 的属性。您没有RelativeLayout. 因此,上面 XML 中使用的那些属性对您没有好处。

要创建一个有四列的行,请有四个TableRow小部件的子级。

我不完全清楚您将如何实现右对齐效果。可能android:gravity会让你到达那里,但我怀疑问题比这更复杂。

于 2010-09-25T01:24:38.417 回答
0

android:gravity应该是你在这里所需要的,因为你的 TextView 已经在width=fill_parent,例如它会将文本与视图内的右侧对齐。

否则,您也可以使用android:layout_gravity="right",例如,如果您有视图width=wrap_content并且需要告诉容器如何对齐它。

于 2010-09-25T06:43:18.733 回答