0

我列出了包含一些文本视图的视图。当另一个文本视图中的一个文本视图中有一个长字符串时,其中一个文本视图有时会被推到视图之外。

如何使文本视图变成椭圆形并且从不推出其他视图?

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/RelativeLayout1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" android:padding="5dp">

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >
        <TextView
            android:id="@+id/rest_name"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="left"

            android:maxLines="2"
            android:ellipsize="end"
            android:text="Name"
            android:textAppearance="?android:attr/textAppearanceLarge" />


        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:gravity="right"
            android:orientation="horizontal" >

            <TextView
                android:id="@+id/rest_rating"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="1.5"
                android:singleLine="true"
                android:textAppearance="?android:attr/textAppearanceLarge" />
        </LinearLayout>
    </LinearLayout>

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <TextView
            android:id="@+id/rest_type"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="left"
         android:ellipsize="end"
            android:singleLine="true"
            android:capitalize="words"
            android:textAppearance="?android:attr/textAppearanceSmall" />

        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:gravity="right"
            android:orientation="horizontal" >

            <TextView
                android:id="@+id/rest_open"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:paddingLeft="5dp"
                android:text="Open"
                android:singleLine="true"
                android:textAppearance="?android:attr/textAppearanceSmall" />
        </LinearLayout>
    </LinearLayout>

</LinearLayout>
4

1 回答 1

0

我知道这很奇怪,但如果你拿出

      android:capitalize="words"

你应该看到你想要的结果。你甚至不需要android:ellipsize="end"

    <TextView
        android:id="@+id/rest_type"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="left"
        android:singleLine="true" // <-- the play maker
        android:textAppearance="?android:attr/textAppearanceSmall" />
于 2012-12-02T21:45:56.793 回答