Android的追加“......”在最后的TextView _EDIT(android appen

2019-09-28 02:50发布

我有一个观点lsit和我,我需要添加一些文字。 在适配器,我需要追加......在最后,我用我给出以下

android:ellipsize="end"

在仅示出2行例如:
asdnfsdfdsf asdfsdfasdf
sdfsd sdfsdf sdfsd广告...

当我给

android:ellipsize="start"

这是因为:
asdnfsdfdsf asdfsdfasdfd
... sdfsd sdfsdf sdfsd广告

完整的代码我使用:

<TextView  android:layout_width="wrap_content" android:background="#016A7D"

   android:layout_height="80dp" android:textColor="#000000"

    android:maxLines="4"          

    android:id="@+id/list_report_desciption" 

    android:ellipsize="end"

/>我得到的输出是:

究竟会智慧的地球
看起来像? 最近怎么变化? 一种...

实际上它包含了超过6行
是否有我需要设置,这样我需要得到3条线的任何东西
谢谢

Answer 1:

文字ellipsization似乎马车,accroding本报告: http://code.google.com/p/android/issues/detail?id=10554

一种解决方法允许ellipsizing一行文本,通过设置android:singleLine属性为true。 但是,该属性是不。



Answer 2:

没有什么工作对我来说:-(
我只是固定的长度。 切在长度字符串,之后追加“...”。
现在,它为我工作。



Answer 3:

我一直在寻找这一个简单的解决方案我自己,我结束了类似:

private String getTextWithMoreIndicator(TextView textView, String text) {

    long maxVisibleChars = textView.getPaint().breakText(text, true, textView.getMeasuredWidth(), null);

    if(maxVisibleChars < text.length()) {
        text = text.substring(0, (int)maxVisibleChars -3) + "..."; 
    }

    return text;
}


Answer 4:

你接受的解决方案将不会在所有设备上正确缩放。

原因 :“一”是不是“A”更小的宽度,所以,如果你是基于一些大小截取字符串(比如15个字母),并通过添加代码“...”。 您可能会看到不期望的结果。

现在来解决: -

解决方案:

解决方案#1:以下3个属性添加到您的TextView,你会得到你想要的结果:)

<TextView
    android:ellipsize="end"
    android:lines="1"
    android:scrollHorizontally="true" />

解决方案2:另一种解决方法可能是,你可以决定滚动字幕文本(花哨的动画从向右移动文本到左)。 为此你需要按照你的TextView XML属性: -

<TextView
    android:id="@+id/my_text_view"
    android:ellipsize="marquee"
    android:lines="1"
    android:scrollHorizontally="true"
    android:marqueeRepeatLimit="marquee_forever" />

然后在你的代码,你需要通过ID来获得的TextView及放入以下行: -

TextView myTextView = (TextView) findViewById(R.id.my_text_view);
myTextView.setSelected(true);

####编辑: - ####

我想通了,我的解决办法的Android版本低于2.3.x版本,我们需要添加下面一行在我们的TextView XML较大的工作: -

    android:singleLine="true"

虽然它是一个过时的属性,但是你要添加这个,否则选取框或“...”不会工作。

希望这个答案:)



文章来源: android append '…' at the end textview _EDIT