我必须在文本视图中的文本末尾添加3个点。我的textview在一个惰性列表适配器中,所以内容更改非常often.Only,在textView中显示了两行。
例如,假设文本是
abcdefghigdddddddd dddddddddddddddddddd
结果应该是
abcdefghigdddddddd定义gigddddddddddddddddddddddddddddddddd...
我知道我应该使用.replace("...","");
但是怎么才能永远把最后三个字都写掉呢?
我的文本视图如下所示
holder.title.setText(Html.fromHtml(a.name));其中a.name是要设置的数据。
发布于 2013-03-25 21:24:39
您可以将'elipses‘属性添加到您的TextView中,也可以指定文本视图只有一行。它可能看起来像这样:
<TextView
android:id="@+id/text_value"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ellipsize="end"
android:maxLines="1" />发布于 2013-03-25 21:38:26
只需设置您的TextView属性android:ellipsize="end",您就会得到结果。
发布于 2013-03-25 21:24:46
首先,获取字符串形式的文本。然后获取字符串的长度。然后,您可以获取倒数第三个字符的索引。您可以轻松地将最后三个字符替换为...
所有这些都可以使用Java中的String类的方法来完成。
假设您只希望显示字符串"raviranjan“中的4个字符,并且希望通过将所有其他字符替换为"...”来裁剪它们。具体操作如下:
String str = "raviranjan";
int length = str.length();
String subString = str.substring(0, 3); // takes four characters from beginning
String str2 = subString + "..."; // Add ellipsis现在str2就是你想要的字符串...
https://stackoverflow.com/questions/15615984
复制相似问题