源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

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

  • 时间:2020-07-14 23:38 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:android TextView多行文本(超过3行)使用ellipsize属性无效问题的解决方法
布局文件中的TextView属性
[u]复制代码[/u] 代码如下:
<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代码中控制文本的显示行数
[u]复制代码[/u] 代码如下:
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);   }   } });
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部