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); }

最新文章

  1. svn post-commit 同步
  2. jq实现 按钮点击一次后 3秒后在可点击
  3. Linux常用命令(持续更新)
  4. ServletContext总结
  5. PHP 怎么随机获取数组里面的值
  6. 实战EntityFramework
  7. google chrome中如何删除一条输入网址提示
  8. OOX 面向对象X
  9. Win7下不能查看xp系统共享的文件,解决方法
  10. 201521123051《java程序设计》 第一周学习总结
  11. 关于 linux中TCP数据包(SKB)序列号的小笔记
  12. mysql执行计划id为空—UNION关键字
  13. 网页前端 html js 相关
  14. 扯淡设计模式2:java,模板模式,
  15. salt-api配置安装 以及使用
  16. linux应用之gcc环境的安装
  17. Spring Cloud(2)A Eureka server端 服务注册建立
  18. B1014. 福尔摩斯的约会
  19. 【BZOJ 1419】1419: Red is good (概率DP)
  20. Java Collection.Map

热门文章

  1. 利用PHP生成二维码(转)
  2. PHP概率算法(适用于抽奖、随机广告)
  3. Asp.Net+Extjs实现登录
  4. 元数据标签Embed
  5. C# Tcp协议收发数据
  6. android网络请求之POST方法
  7. 1045 | error connecting to master 'slave_user@192.168.0.75:3306' - retry-time: 6
  8. hdu 1358 KMP的next数据运用
  9. 设计模式——java
  10. Acrobat 2015 win32破解版