您的位置:首页 > 其它

TextView.setTextSize 单位问题

2016-07-14 17:17 225 查看
TextView.getTestSize 获得的数值的单位是sp,但是我们在代码里面通过getResources()引用尺码会出现问题

解决方法是获得尺码后再除以屏幕密度获得真正的sp数值。则可解决问题

代码如下:

float getxsmd = getPxdensity(mContext);

right_tv.setTextSize(TypedValue.COMPLEX_UNIT_SP,getResources().getDimension(R.dimen.middle_small)/getxsmd);

// 获得像素密度
public static float getPxdensity(Context context) {
WindowManager win = (WindowManager) context
.getSystemService(Context.WINDOW_SERVICE);
DisplayMetrics dis = new DisplayMetrics();
win.getDefaultDisplay().getMetrics(dis);
return dis.density;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: