如何在Android中截断具有淡入淡出效果的文本?

时间:2015-03-19 18:00:39

标签: android textview truncate

我知道之前已经问过这个问题,但接受的答案不起作用,没有一条评论对我有帮助。 How to replace ellipses with fade / fading edge in textview in Android sdk?

我正在尝试使用ellipsize =“marquee”来截断我的文本,并且有一个淡入淡出效果而不是省略号。

<TextView
  android:layout_width="200dp"
  android:layout_height="wrap_content"
  android:text="LOREM IPSUM SCARAMOUCHE SCRARAMOUCHE GALILEO PACCIORETTY"
  android:singleLine="true"
  android:ellipsize="marquee"/>

我希望我能发布截图,但SE不会让我。这是它在屏幕上的样子

  

LOREM IPSUM SCARAMOUC ..

这个词没有消失,也没有显示省略号。相反,它显示2个点。

请注意,我不希望文本滚动,我只是希望它使用淡入淡出效果而不是省略号进行截断。

2 个答案:

答案 0 :(得分:0)

您可以使用

android:requiresFadingEdge="horizontal"
android:fadingEdgeLength="@dimen/align_twenty"
android:fadeScrollbars="false"
android:ellipsize="none"

答案 1 :(得分:0)

您也可以通过编程方式执行此操作:

TextView yourTextView = findViewById(R.id.your_textview);    
yourTextView.setSingleLine(true);
yourTextView.setEllipsize();
yourTextView.setHorizontalFadingEdgeEnabled(true);
yourTextView.setFadingEdgeLength(20);
yourTextView.setHorizontalFadingEdgeEnabled(true);