📅  最后修改于: 2023-12-03 15:39:32.999000             🧑  作者: Mango
在一些情况下,文本可能会非常长,并且不适合完全显示在 TextView 中。为了解决这个问题,我们可以为 TextView 添加一个自动截断文本的限制,使文本过长时以省略号(...)表示。
使用 maxLines 属性可以指定文本在 TextView 中显示的最大行数。当文本超出这个最大行数时,TextView 会自动将多余的文本省略掉并显示省略号。下面是一个例子:
<TextView
android:id="@+id/myTextView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:maxLines="3"/>
上面的代码中,我设置了 TextView 的最大行数为3,当文本超过3行时,TextView 会自动将文本截断,并在末尾添加省略号。
使用 ellipsize 属性可以指定 TextView 在显示截断文本时添加的省略号位置。该属性有以下几个选项:
下面是一个例子:
<TextView
android:id="@+id/myTextView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:maxLines="3"
android:ellipsize="end"/>
上面的代码中,我设置了 TextView 的最大行数为3,并在末尾添加省略号。
使用代码可以更加灵活地控制文本的截断方式。下面是一个示例:
TextView textView = findViewById(R.id.myTextView);
textView.setEllipsize(TextUtils.TruncateAt.END);
textView.setMaxLines(3);
上面的代码中,我使用 setEllipsize() 方法指定了省略号位置,并使用 setMaxLines() 方法指定了最大行数。