码迷,mamicode.com
首页 > 移动开发 > 详细

Android TextUtil

时间:2015-02-04 23:03:07      阅读:222      评论:0      收藏:0      [点我收藏+]

标签:

Android中计算textView长度问题

今天有一个需求,需要TextView显示两行的信息,但是右下角区域需要空出来,要来显示一张小图片,要实现的效果如图所示。

技术分享

这里遇到的问题是计算TextView的可显示长度和文本在画布中的长度。

1.TextView的宽度由屏幕总宽度- 额外宽度 得到。然后乘以2得到TextView可以显示的内容的宽度。

2.使用工具方法TextUtils.ellipsize方法,将1中计算的长度传入,得到TextView中可以显示的文本的内容。

3.将2中得到的文本set到TextView中。

简单的代码如下:

private void measureTextWidth(TextView textView,String txt){ 
        if(textLength == 0){ 
            float textViewWidth = Variable.availableWidth - (40+50+15+11)*Variable.dip; 
            textLength = textViewWidth * 2 - 5*11 * Variable.dip; 
        } 
        Paint paint  = textView.getPaint(); 
        paint.setTextSize(textView.getTextSize()); 
        String temp = (String) TextUtils.ellipsize(txt, (TextPaint) paint, textLength , TextUtils.TruncateAt.END); 
        textView.setText(temp); 
         
    } 

 

Android TextUtil

标签:

原文地址:http://www.cnblogs.com/icgq/p/4273304.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!