Android中将像素转换为sp/dp

来源:互联网 发布:判断矩阵权重计算 编辑:程序博客网 时间:2024/05/16 02:47

private static final float DIP = 16.0f;
 
// 将dip转换为pixel,将pixel转换为dip只需将算式进行逆运算即可
final float scale = getContext().getResources().getDisplayMetrics().density;
int pixel = (int) (DIP * scale + 0.5f);
 
// 获取屏幕高度的像素值
getContext().getResources().getDisplayMetrics().heightPixels;


说明:将像素值与Android的尺寸单位dp转换。dp/sp的意义基本相同,都是与屏幕密度无关的尺寸单位,只不过前者用于字体尺寸以外的场合,而后者用于指定字体尺寸。在不同情况下,dp和sp所表示的尺寸会有些不同