android textview布局重量问题

时间:2018-05-21 07:54:24

标签: android textview width android-layout-weight

我正在开展一个项目。我需要让TextView适合1行(如下所示)。

Click to show the original view and required view

但在我尝试调整layout_weight后,它失败了。

这是我的代码(原始layout_weight):

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tool="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <include layout="@layout/view_toolbar" />

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_below="@id/appbar"
        android:orientation="horizontal">

        <LinearLayout
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:gravity="center_horizontal"
            android:orientation="vertical"
            android:padding="25dp">

            (omitted)

            <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
                android:id="@android:id/text1"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginLeft="@dimen/padding_small"
                android:gravity="center_vertical"
                android:orientation="horizontal"
                android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
                android:paddingStart="?android:attr/listPreferredItemPaddingStart"
                android:textAppearance="?android:attr/textAppearanceListItemSmall">

                <TextView
                    android:id="@+id/hose_expired_count"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_marginRight="@dimen/padding_x_larger"
                    android:layout_weight="1"
                    android:textColor="@color/textColor_dark"
                    android:textSize="@dimen/font_size_medium" />

                <TextView
                    android:id="@+id/hose_expired_count_amount"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_marginLeft="@dimen/padding_larger"
                    android:layout_weight=".5"
                    android:textColor="@color/textColor_dark"
                    android:textSize="@dimen/font_size_medium" />
            </LinearLayout>

            (omitted)

        </LinearLayout>

        (omitted)

    </LinearLayout>
</RelativeLayout>

如何修复layout_weight(以及可能的宽度,高度等)以便我可以安装TextView

2 个答案:

答案 0 :(得分:1)

你怎么不使用hose_expired_count_amount TextVIew的权重。只需使用wrap_content作为宽度,不要添加任何重量。您的&#34;软管已过期&#34;文字将填补空间。

 <TextView
                android:id="@+id/hose_expired_count"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_marginRight="@dimen/padding_x_larger"
                android:layout_weight="1"
                android:textColor="@color/textColor_dark"
                android:textSize="@dimen/font_size_medium" />

            <TextView
                android:id="@+id/hose_expired_count_amount"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginLeft="@dimen/padding_larger"
                android:textColor="@color/textColor_dark"
                android:textSize="@dimen/font_size_medium" />
        </LinearLayout>

如果您希望文本直接位于彼此旁边,则需要通过将重力设置为右/右来右对齐您的hose_expired_count TextView

答案 1 :(得分:0)

只需使用wrap_content宽度为 hose_expired_count_amount