TextView无缘无故地包装短文本,而不包装更长的文本

时间:2015-06-02 15:07:51

标签: android android-layout

目前我正在创建一个应用并遇到一个奇怪的问题。我的活动有这种布局

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:customfont="http://schemas.android.com/apk/res-auto"
    android:id="@+id/relativeLayout_all"
    android:layout_width="320dp"
    android:layout_height="407dp"
    android:background="@color/background"
    android:orientation="vertical" >
    <RelativeLayout
        android:id="@+id/rel_result"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true" >
        <TextView
            android:id="@+id/id_result"
            style="@style/font_Result"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:layout_centerHorizontal="false"
            android:layout_centerVertical="false"
            android:layout_marginStart="8dp"
            android:layout_marginEnd="8dp"
            android:layout_marginTop="105dp"
            android:gravity="center"
            android:maxLines="1"
            android:maxWidth="216dp"
            android:textColor="@color/grey" />
        <TextView
            android:id="@+id/id_unit"
            style="@style/font_Title"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignBaseline="@+id/id_result"
            android:layout_alignBottom="@+id/id_result"
            android:layout_alignStart="@+id/id_image"
            android:maxLines="1"
            android:maxWidth="80dp"
            android:textColor="@color/grey" />
        <ImageView
            android:id="@+id/id_image"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_above="@+id/id_unit"
            android:layout_marginBottom="27dp"
            android:layout_toEndOf="@+id/id_result" />
        <ImageView
            android:id="@+id/id_image2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignStart="@+id/id_image"
            android:layout_alignTop="@+id/id_result" />
    </RelativeLayout>
</RelativeLayout>

在我的onCreate()中,我通过他们的ID调用Views并设置文本和drawable。根据测量结果,有两种情况:

1)显示测量结果(让我们说42.9 GW / ms)

  • TextView id_result:&#39; 42.9&#39;
  • TextView id_unit:&#39; GW / ms&#39;
  • ImageView id_image:@ drawable / image1_1
  • ImageView id_image2:@ drawable / image2_1

一切都很好

2)结果太高

  • TextView id_result:&#39; HI&#39;
  • TextView id_unit:visibility GONE
  • ImageView id_image:visibility GONE
  • ImageView id_image2:visibility GONE

现在问题就在于此。我期待着文字&#39; HI&#39;以屏幕为中心显示。相反,只有&#34; H&#34;显示。当我设置android:maxLines="2"时,会发现,Android在&#39; H&#39;之后包装了文本。 &#39;我&#39;坐在第二行。为什么会这样? &#39; 42.9&#39;更长,不会被包裹。

有没有人有解决方案?

0 个答案:

没有答案