Android中将像素转换为sp/dp

代码与范例:

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所表示的尺寸会有些不同,这部分内容将在之后补充。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注