android中是否有任何方法可以使长文本的某些行颜色变松?
问问题
354 次
1 回答
0
我给你所有的提示,你需要想出解决方案,而不是写一个解决方案
我假设您的文本本质上是动态的,这意味着文本长度会有所不同。
首先,您将constant
在您的类中定义一个提供最大行数以显示最初(以及阅读更多)按钮
// here for example, you want to show 5 lines along with read more button
private static final int DEFAULT_DESCRIPTION_LINES_PORTRAIT = 5;
现在,一旦你设置了你的文本,你就检查你的文本的行数是否小于 5。如果它小于 5,那么您根本不需要显示read more
按钮。如果它超过 5,那么您可以将其设置maxLines
为TextView
默认行。您还将使read more
按钮可见
textView.setMaxLines(DEFAULT_DESCRIPTION_LINES_PORTRAIT);
readMorebutton.setVisibility(View.VISIBLE);
现在,只要用户按下该按钮,您只需切换maxLines
到其中一个default
或行数。随之而来的是分别actual
使readMoreButton
能见度。gone
visible
此外,TextView
布局膨胀可能需要时间,因此您可能需要运行一个runnable
,post
这样TextView
您就可以确定无论何时调用textivew..getLineCount();
,您都会获得正确的值。
关于 顶部的渐变button
,您可以简单地将其button
与full width
垂直顶部的视图(将具有渐变背景)放在一起LinearLayout
。
我希望这有帮助。
于 2017-02-19T13:11:46.340 回答