android TextView多行文本(超过3行)使用ellipsize属性无效问题的解决方法

转载 2015年07月08日 16:31:40
这篇文章介绍了android TextView多行文本(超过3行)使用ellipsize属性无效问题的解决方法,有需要的朋友可以参考一下
布局文件中的TextView属性
复制代码代码如下:

<TextView
android:id="@+id/businesscardsingle_content_abstract"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:lineSpacingMultiplier="1.0"
android:lines="6"
android:text="@string/agrinbusiness_content"
android:textColor="#7f7f7f"
android:textSize="13sp" />

 

 在JAVA代码中控制文本的显示行数

复制代码代码如下:

ViewTreeObserver observer = textAbstract.getViewTreeObserver(); //textAbstract为TextView控件
observer.addOnGlobalLayoutListener(new OnGlobalLayoutListener() {

@Override
public void onGlobalLayout() {
ViewTreeObserver obs = textAbstract.getViewTreeObserver();
obs.removeGlobalOnLayoutListener(this);
if(textAbstract.getLineCount() > 6) //判断行数大于多少时改变
  {
    int lineEndIndex = textAbstract.getLayout().getLineEnd(5); //设置第六行打省略号
    String text = textAbstract.getText().subSequence(0, lineEndIndex-3) +"...";
    textAbstract.setText(text);
  }
  }
});

android TextView多行文本(超过3行)使用ellipsize="end"属性无效问题的解决方法

android:id="@+id/desc" android:layout_width="match_parent" android:layout_height="130px" android:...
  • huimeiad
  • huimeiad
  • 2016年06月14日 10:22
  • 184

android TextView多行文本(超过3行)使用ellipsize属性无效

ViewTreeObserver observer = textAbstract.getViewTreeObserver(); //textAbstract为TextView控件 observer....
  • zr163
  • zr163
  • 2015年01月29日 17:09
  • 297

多字文本android:ellipsize属性不正常工作的解决办法

当TextView中的文本内容长度超过了TextView的宽度,如果是单行,超出部分将被截断,此时我们都会使用android:ellipsize,该属性可以用了来省略显示文本,但很可能不像我们原以为的...
  • mouse12138
  • mouse12138
  • 2016年03月24日 11:01
  • 1277

android TextView 使用SpannableString数据源时,TextView的ellipsize失效

这儿遇到个问题,就是TextView单行超过长度使用“...”结束,如果是一般的String类型的数据,就可以直接用ellipsize属性加上singleline就可以了,但是如果数据源是Spanna...
  • htyxz8802
  • htyxz8802
  • 2015年12月23日 16:27
  • 2584

android 决TextView中MaxLines与ellipsize=end冲突问题

今天,讲讲如何在多行文本后显示省略号。 TextView控件有一个属性是ellipsize,指的是当文字内容长度超过TextView大小时显示问题,一般情况下我们都是用省略号表示,常用的情况...
  • bzlj2912009596
  • bzlj2912009596
  • 2017年08月10日 09:08
  • 264

对于TextView 设置 Ellipsize ="End" 无效时的解决方法

在某些版本,或某些机型的系统中,TextView 设置ellipsize = "End" 或其它属性会没有效果,文本过长了,后面也不会显示“...”,这时候,我们可以自己写一个方法对这段过长的字符串进...
  • bbmiku
  • bbmiku
  • 2012年09月28日 16:35
  • 2993

Android控件TextView中ellipsize属性(设置当文字长度超过textview宽度时的显示方式)

TextView中可以设置一个ellipsize属性,作用是当文字长度超过textview宽度时的显示方式: 例如,字符串"abcedfg" 的各种现实效果: android:ellipsize=”...
  • Zhangxichao100
  • Zhangxichao100
  • 2016年08月06日 22:49
  • 9408

【TextView】Android TextView显示省略号的问题(关于TextView maxLength 和maxEms的学习)

1、TextView的属性maxLength和maxEms学习; 2、为什么有时候设置maxEms没效果 3、TextView省略号的显示...
  • u012391876
  • u012391876
  • 2016年10月19日 18:15
  • 6077

Android中TextView:的ellipsize属性

在TextView中,当文字长度超出TextView中显示宽度时,我们可以使用TextView中的ellipsize属性。 如: android:ellipsize=”start”—–省略...
  • liuyuemozhu
  • liuyuemozhu
  • 2016年10月06日 18:15
  • 1657

TextView限制最大行数,多出部分显示省略号,解决ellipsize = "end" 失效的问题

1.重写TextView代码 package com.example.stringtest; import android.content.Context; import and...
  • MarketAndTechnology
  • MarketAndTechnology
  • 2015年11月28日 11:44
  • 2101
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:android TextView多行文本(超过3行)使用ellipsize属性无效问题的解决方法
举报原因:
原因补充:

(最多只允许输入30个字)