当水平LinearLayout中有多个TextView时,我遇到了一些文本对齐问题

时间:2017-12-19 19:32:56

标签: android android-layout listview textview android-linearlayout

在我的主布局中,我有一个ListView。单击一个按钮时,它会将一个并排有四个TextView的行(请参见下面的图像链接)放入ListView。问题是,有时当任何TextView文本长度与上面或下面的行不同时,它会抛出该行的文本对齐方式。

使用第一行作为我希望其余行的样子的示例,我不明白为什么必须将行2,3,5和6上的数量对齐移动因为Total Bft有额外的字符,或者为什么第2行和第6行的描述看起来比其他字符更集中。以数量列为例,我认为设置重力'要正确的'将文本中的所有文本一直设置到TextView的右侧,无论文本的长度是在它旁边的列中。描述也是如此。

基本上我想要的是每个TextViews文本都从它上面一行的相同位置开始。下面的图片链接展示了我所希望的。我已经尝试为TextViews设置textAllignment属性,但这对我没有帮助。此外,我意识到我可以舍入一些小数或添加.000到没有小数的那些,这将解决一些问题,但我试图不这样做。 解决此问题的最佳方法是什么?

Image

这是LinearLayout和TextViews

的axml
            <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="fill_parent"
            android:orientation="horizontal"
            android:weightSum="100"
            android:minWidth="25px"
            android:minHeight="25px"
            android:id="@+id/linearLayoutBackground">
            <TextView
                android:layout_height="wrap_content"
                android:layout_width="wrap_content"
                android:id="@+id/txtItemNo"
                android:textColor="#000"
                android:gravity="left"
                android:textSize="17sp"
                android:layout_weight="25"
                android:text="item" />
            <TextView
                android:layout_height="wrap_content"
                android:layout_width="wrap_content"
                android:textColor="#000"
                android:id="@+id/txtDescription"
                android:gravity="left"
                android:layout_weight="25"
                android:textSize="17sp"
                android:text="description"
                android:singleLine="false" />
            <TextView
                android:layout_height="wrap_content"
                android:layout_width="wrap_content"
                android:textColor="#000"
                android:id="@+id/txtQuantity"
                android:gravity="right"
                android:layout_weight="25"
                android:textSize="17sp"
                android:text="qty" />
            <TextView
                android:layout_height="wrap_content"
                android:layout_width="wrap_content"
                android:textColor="#000"
                android:id="@+id/txtTotal"
                android:gravity="right"
                android:layout_weight="25"
                android:textSize="17sp"
                android:text="total" />
        </LinearLayout>

0 个答案:

没有答案