4

我有一个 TextView,其中填充了从数据库中获取的文本,因此它的长度未定义。

我已经使用 maxline 属性配置了 TextView,并将其值设置为 3,因为我不想要超过 3 行的文本,而且我还使用了 ellipsize 属性。

但它不能正常工作。虽然文本大于 3 行,但它只打印两行。

<TextView
    android:id="@+id/etLugar"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBaseline="@+id/tvLugar"        
    android:layout_marginLeft="15dp"
    android:layout_toRightOf="@+id/tvLugar"
    android:text="A very large text than must be shown in the textview, but no more of three lines are going to be shown"
    android:textColor="@color/foreground1"        
    android:maxLines="3"
    android:ellipsize="end"        
    android:textSize="12dp" 
    />

我不明白为什么 maxlines 属性不能正常工作。我做错了什么?

谢谢

4

5 回答 5

3

我想这是由于android:singleLine="false"哪个是默认值尝试更改它以TRUE 判断它是否有效。

于 2013-06-01T18:02:18.370 回答
0

由于您只有两行的内容较少,因此您编写代码(xml)在字符串中输入更多内容然后尝试它是完美的。

图片在此处输入图像描述

于 2013-10-02T06:10:24.787 回答
0

我在 2 个 TextView 上遇到了类似的问题,一个应该有 maxLines="2",另一个应该有 maxLines="4"。

无论我添加什么椭圆大小设置,第一个总是在一行上。第二个无关紧要,文本使用了它需要的行数!

这似乎取决于两个因素:

  1. 布局的其他元素
  2. 如果设置了 textAppearance 可能会破坏/覆盖此设置或 singleLine 选项

为了解决这个问题,我直接在文本视图上添加了代码:

tv1.setMaxLines(2);
tv2.setMaxLines(4);

这就是诀窍。

于 2014-03-24T12:38:39.810 回答
0

有同样的问题Android ellipsize multiline textview。这是已知的错误,很老,还没有修复。

有人发布了解决方法Android Textview Multiline Ellipse/也许它会帮助你(或其他人)。

于 2012-07-20T11:30:40.600 回答
-1

不要使用该ellipsize属性,android:maxlines="3"应该可以工作。

于 2012-07-20T11:30:08.930 回答