我有一个TextView,其高度取决于之前的内容,但其中可能有一个长文本。如何在正确的位置切断它并连接三个点或类似于新结束的东西?
我找到了单线文本的一些解决方案,但是如何使用多行?我也不知道行数,因为这取决于屏幕尺寸。
Android上是否有其他典型方式可以显示文本可以扩展?例如。最后一行的颜色渐变?
修改
当我没有固定的高度时,我必须使高度取决于上面的元素,我的XML将如下所示:
<TextView
android:id="@+id/podcastShortDesc"
android:text="Long text"
android:layout_below="@+id/podcastTitle"
android:layout_toRightOf="@+id/podcastLogo"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:maxLines="3"
android:ellipsize="end"
android:layout_above="@+id/podcastMoreAction" />
但如果标题太大,则不起作用:
答案 0 :(得分:1)
试试这个。希望它能奏效。
<TextView
android:id="@+id/podcastShortDesc"
android:text="LONG LONG LONG TEXT"
android:layout_width="match_parent"
android:layout_height="50dip"
android:maxHeight="50dp"
android:ellipsize="end"/>
我测试过50dp可以显示正常字体大小的两行。所以在50dp高度你应该添加maxLines 2。
答案 1 :(得分:1)
您应该为&#34; 3点添加以下代码&#34;最后。
android:ellipsize="end"
您应该删除固定高度属性
android:layout_height="50dip"
相反,你应该添加行数
android:maxLines="4"
android:layout_height="wrap_content"
Android会照顾其他一切。这样,即使文本小于4行,android也会照顾大小。如果它超过4行,它将添加&#34; 3点&#34; :)指定固定高度可能会削减您的文字。
答案 2 :(得分:0)
尝试修复layout_height并在textview中添加滚动
<TextView
android:id="@+id/text1"
android:layout_width="match_parent"
android:layout_height="50dip"
android:text="Hello......"
android:scrollbars="vertical"/>