Android TextView Gravity BOTTOM意外行为

时间:2019-05-03 08:04:46

标签: android textview

我当前的Android项目要求在TextView中显示多行文本(最多3行),并将该文本放置在文本视图的底部。

我的TextView定义如下:-

<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`"

我如何获得理想的结果?

3 个答案:

答案 0 :(得分:2)

尝试;

android:gravity="bottom|start"

代替

android:gravity="bottom"

答案 1 :(得分:1)

使用:

android:ellipsize="end"

将此属性添加到您的TextView中,您将看到从头开始的文本,在第三行的末尾会有3个点(...),表示文本超过3行。

答案 2 :(得分:0)

使用:

android:gravity="start"
重力下的

底值将改变显示行为。您可以使用边距更改TextView的高度。