Android TextView重力底部意外行为



我当前的Android项目需要在TextView中显示多行文本(最大为3(,然后将文本放在文本视图的底部。

我的文本视图定义如下: -

<TextView
    android:id="@+id/my_title"
    android:layout_width="@dimen/image_width"
    android:layout_height="@dimen/image_height"
    android:layout_alignTop="@+id/other_title"
    android:layout_marginTop="@dimen/span_eight"
    android:layout_toEndOf="@+id/dot"
    android:maxLines="3"
    android:gravity="bottom"
    android:padding="2dp"
    android:textColor="@android:color/white"
    android:textSize="@dimen/text_twelve" />

当要显示的文本是3个或以下的线条时,文本如您期望的。

但是,当其长度超过3行时,文本的开始就被截断了。

例如

" Artificial cells, nanomedicine, and biotechnology"

显示为

"`cine, and biotechnology`"

我需要的是显示为

"`Artificial cells, nanom`"

如何达到所需的结果?

try;

android:gravity="bottom|start"

而不是

android:gravity="bottom"

使用:

android:ellipsize="end"

将此属性添加到您的TextView中,您会从开始时看到文本,在第三行末尾3点(...(将在那里表明文本超过3行。

使用:

android:gravity="start"

重力中的底值将改变显示行为。您将文本视图高度与边距更改。

最新更新