使用如下代碼時,發現字號不會變大,反而會變小:
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
<span style="" font-family:"微軟雅黑","sans-serif";"="">下面這樣就正常了:
size = (int) mText.getTextSize() + 1;
mText.setTextSize(TypedValue.COMPLEX_UNIT_PX, size);