Android elipsize TextView 如果将文本视图放在列表视图之后不起作用



我发现非常奇怪的行为与省略textview。它不会滚动文本,比如把textview放在listview之后。如果我把textview在布局的开始它的工作。会是什么呢?

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:orientation="vertical"
              android:layout_width="match_parent"
              android:layout_height="match_parent">
<!--
    <TextView
            android:text="START | lunch 20.00 | Dinner 60.00 | Travel 60.00 | Doctor 5000.00 | lunch 20.00 | Dinner 60.00 | Travel 60.00 | Doctor 5000.00 | END"
            android:id="@+id/MarqueeText1"
            android:layout_width="fill_parent"
            android:layout_height="40dp"
            android:singleLine="true"
            android:ellipsize="marquee"
            android:marqueeRepeatLimit="marquee_forever"
            android:scrollHorizontally="true"
            android:paddingLeft="15dip"
            android:paddingRight="15dip"
            android:focusable="true"
            android:focusableInTouchMode="true"
            android:freezesText="true"/>
-->

    <include layout="@layout/reminder_header_item"/>
    <ListView
            android:id="@+id/lv_trade_points"
            android:layout_width="match_parent"
            android:layout_height="300dp"
            >
    </ListView>
    <View
            xmlns:android="http://schemas.android.com/apk/res/android"
            android:layout_width="match_parent"
            android:layout_height="1dp"
            android:layout_marginBottom="1dp"
            android:layout_alignParentBottom="true"
            android:background="#DADADC" />
    <TextView
            xmlns:android="http://schemas.android.com/apk/res/android"
            android:text="START | lunch 20.00 | Dinner 60.00 | Travel 60.00 | Doctor 5000.00 | lunch 20.00 | Dinner 60.00 | Travel 60.00 | Doctor 5000.00 | END"
            android:id="@+id/MarqueeText1"
            android:layout_width="fill_parent"
            android:layout_height="40dp"
            android:singleLine="true"
            android:ellipsize="marquee"
            android:marqueeRepeatLimit="marquee_forever"
            android:scrollHorizontally="true"
            android:paddingLeft="15dip"
            android:paddingRight="15dip"
            android:focusable="true"
            android:focusableInTouchMode="true"
            android:freezesText="true"/>
    <View
            android:layout_width="match_parent"
            android:layout_height="1dp"
            android:layout_marginBottom="1dp"
            android:layout_alignParentBottom="true"
            android:background="#DADADC" />
</LinearLayout>

我的布局

如果你想要滚动,你的textView的高度必须是wrap_content

如果您在dp中指定,您将无法实现目标

<TextView
            xmlns:android="http://schemas.android.com/apk/res/android"
            android:text="START | lunch 20.00 | Dinner 60.00 | Travel 60.00 | Doctor 5000.00 | lunch 20.00 | Dinner 60.00 | Travel 60.00 | Doctor 5000.00 | END"
            android:id="@+id/MarqueeText1"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:singleLine="true"
            android:ellipsize="marquee"
            android:marqueeRepeatLimit="marquee_forever"
            android:scrollHorizontally="true"
            android:paddingLeft="15dip"
            android:paddingRight="15dip"
            android:focusable="true"
            android:focusableInTouchMode="true"
            android:freezesText="true"/>

最新更新