Android更新文本视图和对齐方式

时间:2011-06-11 12:53:44

标签: android textview updating

我有两个并排的文本视图,一个对齐右边,一个左边将它们保持在一起。右侧只是左侧给出的测量类型的标签。问题是当左侧TextView是一个大数字时,两个TextView是并排的,中间没有间隙。但是一旦左侧TextView变成一个小数字,它就会与右侧隔开。

例如,在一个周期内它可能看起来像这样: 3000米

然后在下一个这样: 5米

我需要它让他们在一起。在更新视图时,我可以做些什么来实现这个,xml端或代码端?

编辑 - 好吧我必须在wordpad中编辑它才能让它在这里正确显示

<TableRow android:layout_width="fill_parent"
    android:background="@drawable/maindatabg"> 
            <TableLayout 
                android:layout_gravity="center_horizontal"
                android:stretchColumns="*">
            <TableRow>
               <TextView
                  android:id="@+id/spaceValue"
                  android:text="00.0"
                  android:textStyle="bold"
                  android:textColor="#FFFFFF"
                  android:layout_gravity="right"
                  android:textSize="20dip"/>
              <TextView
                  android:id="@+id/spaceTypeValue"
                  android:layout_height="fill_parent"
                  android:text="meters"
                  android:textStyle="bold"
                  android:textColor="#FFFFFF"
                  android:layout_gravity="left"
                  android:textSize="14dip"/>
          </TableRow>
      </TableLayout>                                                         
</TableRow>

2 个答案:

答案 0 :(得分:1)

提到android:gravity =“right”到android:id =“@ + id / spaceValue”。样本布局和测试工作正常。

<?xml version="1.0" encoding="utf-8"?>
<TableRow xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:layout_height="fill_parent" >
<TableLayout android:layout_gravity="center_horizontal"
    android:stretchColumns="*">
    <TableRow>
        <TextView android:id="@+id/spaceValue" android:text="3000"
            android:textStyle="bold" android:textColor="#FFFFFF"
            android:layout_gravity="right"  android:gravity="right"
            android:textSize="20dip" />
        <TextView android:id="@+id/spaceTypeValue"
            android:layout_height="fill_parent" android:text="meters"
            android:textStyle="bold" android:textColor="#FFFFFF"
            android:layout_gravity="left" android:textSize="14dip" />
    </TableRow>
</TableLayout>
    </TableRow>

答案 1 :(得分:0)

将代码重新格式化为

<?xml version="1.0" encoding="utf-8"?>
<TableLayout android:layout_gravity="center_horizontal"
android:stretchColumns="*" xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:layout_height="fill_parent">
    <TableRow>
        <TextView android:id="@+id/spaceValue" android:text="4"
            android:textStyle="bold" android:textColor="#FFFFFF"
            android:layout_gravity="right" android:textSize="20dip" />
        <TextView android:id="@+id/spaceTypeValue"
            android:layout_height="fill_parent" android:text="meters"
            android:textStyle="bold" android:textColor="#FFFFFF"
            android:layout_gravity="left" android:textSize="14dip" />
    </TableRow>
</TableLayout>

4米和30000米看起来都是一样的。