首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在动态文本android的末尾添加三个点

在动态文本android的末尾添加三个点
EN

Stack Overflow用户
提问于 2013-03-25 21:19:25
回答 6查看 3K关注 0票数 0

我必须在文本视图中的文本末尾添加3个点。我的textview在一个惰性列表适配器中,所以内容更改非常often.Only,在textView中显示了两行。

例如,假设文本是

abcdefghigdddddddd dddddddddddddddddddd

结果应该是

abcdefghigdddddddd定义gigddddddddddddddddddddddddddddddddd...

我知道我应该使用.replace("...","");

但是怎么才能永远把最后三个字都写掉呢?

我的文本视图如下所示

代码语言:javascript
复制
holder.title.setText(Html.fromHtml(a.name));

其中a.name是要设置的数据。

EN

回答 6

Stack Overflow用户

发布于 2013-03-25 21:24:39

您可以将'elipses‘属性添加到您的TextView中,也可以指定文本视图只有一行。它可能看起来像这样:

代码语言:javascript
复制
<TextView
                    android:id="@+id/text_value"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:ellipsize="end"
                    android:maxLines="1" />
票数 4
EN

Stack Overflow用户

发布于 2013-03-25 21:38:26

只需设置您的TextView属性android:ellipsize="end",您就会得到结果。

票数 2
EN

Stack Overflow用户

发布于 2013-03-25 21:24:46

首先,获取字符串形式的文本。然后获取字符串的长度。然后,您可以获取倒数第三个字符的索引。您可以轻松地将最后三个字符替换为...

所有这些都可以使用Java中的String类的方法来完成。

假设您只希望显示字符串"raviranjan“中的4个字符,并且希望通过将所有其他字符替换为"...”来裁剪它们。具体操作如下:

代码语言:javascript
复制
String str = "raviranjan";
int length = str.length();
String subString = str.substring(0, 3);  // takes four characters from beginning
String str2 = subString + "...";   // Add ellipsis

现在str2就是你想要的字符串...

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15615984

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档