仿真器HDPI与MDPI与LDPI的对比

Mir*_*les 4 android android-emulator

在不同的DPI(120,160,240)下启动具有相同分辨率480x800的android模拟器,我认为具有最高DPI的屏幕将具有最小的界面元素(图像,按钮等)和具有最低DPI的屏幕会有最大的.但恰恰相反.我已经包含了一个屏幕截图来展示我的意思.从右到左:HDPI仿真器,MDPI仿真器,LDI仿真器

我的模拟器设置是:

华电国际:

  • 皮肤分辨率:480x800
  • 提取的LCD密度:240

MDPI:

  • 皮肤分辨率:480x800
  • 提取的LCD密度:160

LDPI:

  • 皮肤分辨率:480x800
  • 提取的LCD密度:120

我使用以下设置启动了每个模拟器:

  • 缩放显示为实际大小
  • 屏幕尺寸:5英寸
  • 监视dpi:105
  • 比例:0.56

我做错了什么,或者这是预期的结果?如果是,为什么它会以这种方式表现?如果我在Photoshop(查看打印选项)中执行等效操作,我会得到完全相反且正确的结果.

Mir*_*les 11

问题结果是简单的数学.如果我们采用计算DPI的公式为

dpi = sqrt(height^2 + width^2)/(screen size in inches)
Run Code Online (Sandbox Code Playgroud)

很明显,在运行模拟器时你不能选择所有三个组件 - 只有两个,android会计算缺少的组件.

从我上面的原始问题来看,我指定了恒定分辨率(480x800)和恒定屏幕尺寸(5英寸).但480x800总是产生大约186 dpi的DPI.因此,迫使DPI在每种情况下都不同于Android模拟器,我认为它丢弃了我指定的原始分辨率并计算了自己的分辨率.