• android中的屏幕单位介绍


    1.px (pixels)(像素):是屏幕的物理像素点,与密度相关,密度大了,单位面
    积上的px 会比较多。通常不推荐使用这个。

    2.dip 或dp(与密度无关的像素):一个基于density(密度)的抽象单位,这个和设
    备硬件有关,通常在开发中设置一些view 的宽高推荐用这个,一般情况下,在不同
    分辨率,都不会有缩放的感觉。在运行时, Android 根据使用中的屏幕的实际密度, 透
    明地处理任何所需dip 单位的缩放。

    3.sp(与刻度无关的像素):同dip/dp 相似,会根据用户的字体大小偏好来缩放,
    主要用于设置字体的大小。

    density 值表示每英寸有多少个显示点,与分辨率是两个概念。
    dip 到px 的转换公式: px = dip * (density / 160)
    Android 官方定义dip 等价于160dpi 屏幕下的一个物理像素点, 即1dip=1px。
    举例来说, 在240 dpi 的屏幕上, 1dip 等于1.5px。

    dpi和px的换算

    import android.content.Context;
    public class DensityUtil {
    public static int dip2px(Context context, float dipValue) {
    final float scale =
    context.getResources().getDisplayMetrics().density;
    return (int) (dipValue * scale + 0.5f);
    }
    public static int px2dip(Context context, float pxValue) {
    final float scale =
    context.getResources().getDisplayMetrics().density;
    return (int) (pxValue / scale + 0.5f);
    }
    }

  • 相关阅读:
    第十七章:jQuery类库
    第十八章:客户端存储
    第十六章:脚本化HTTP
    第十四章 校本化CSS
    第十三章 脚本化文档
    第十二章:window对象
    第十一章:WEB浏览器中的javascript
    第十章:Javascript子集和扩展
    第九章:Javascript类和模块
    第八章:Javascript函数
  • 原文地址:https://www.cnblogs.com/yangfei-beijing/p/4861645.html
Copyright © 2020-2023  润新知