`

Android中计算textView长度问题

 
阅读更多

http://zilla.blog.51cto.com/3095640/984775

 

 

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

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics