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

android-getTextSize返回值是以像素(px)为单位的,setTextSize()以sp为单位

时间:2017-05-22 23:12:10      阅读:282      评论:0      收藏:0      [点我收藏+]

标签:scale   返回值   unit   style   dev   details   font   net   ref   

使用如下代码时,发现字号不会变大,反而会变小:
size = (int) mText.getTextSize() + 1;
mText.setTextSize(size);
后来发现getTextSize返回值是以像素(px)为单位的,而setTextSize()是以sp为单位的,两者单位不一致才造成这样的结果。


这里可以用setTextSize()的另外一种形式,可以指定单位:
setTextSize(int unit, int size)
TypedValue.COMPLEX_UNIT_PX : Pixels
TypedValue.COMPLEX_UNIT_SP : Scaled Pixels
TypedValue.COMPLEX_UNIT_DIP : Device Independent Pixels


下面这样就正常了:
size = (int) mText.getTextSize() + 1;
mText.setTextSize(TypedValue.COMPLEX_UNIT_PX, size);





android-getTextSize返回值是以像素(px)为单位的,setTextSize()以sp为单位

标签:scale   返回值   unit   style   dev   details   font   net   ref   

原文地址:http://www.cnblogs.com/jeffen/p/6891737.html

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