mx在Android设备上dpi被Android系统认为是hdpi还是xhpi,带着以上疑惑,做了下面的实验
计算公式: 1、px=dp*(dpi/160)
2、dip=分辨率平方和/物理尺寸 (1280*1280+800*800) 开方 在除以 4.0 得到dip
mx vs nexus 4
第一步: mx(288的dpi) Android中被认为是hdpi 240nexus4(317的dpi) Android中被认为是 xhdpi 320
第二步 px与dp关系
mx : px = dp*(dpi/160) px = dp*1.5
nexus 4 px = dp*(dpi/160) px = dp*2
第三步 相同的dp在mx和nexus4中的显示大小
mx的分辨率 960*640
nexus 4的分辨率 1280*768
mx宽度的dp : px/(dpi/160) 640/1.5= 426.67 dp
nexus4的宽度dp : px/(dpi/160) 768/2 =384 dp
eg:假设都设置80dp在mx和nexus4上实际显示效果
mx的宽度 63.3 mm
nexus4的宽度 68.3 mm
mx实际显示宽度: 63.3*(80/427.67)= 63.3/5.35 =11.83mm
nexue4的实际宽度: 68.3*(80/384)= 68.3/4.8 =14.23mm
计算公式 mx vs nexus 4
第一步: mx(288的dpi) Android中被认为是hdpi 320
nexus4(317的dpi) Android中被认为是 xhdpi 320
第二步 px与dp关系
mx : px = dp*(dpi/160) px = dp*2
nexus 4 px = dp*(dpi/160) px = dp*2
第三步 相同的dp在mx和nexus4中的显示大小
mx的分辨率 960*640
nexus 4的分辨率 1280*768
mx宽度的dp : px/(dpi/160) 640/2= 320
nexus4的dp : px/(dpi/160) 768/2 =384 dp
eg:假设都设置80dp在mx和nexus4上实际显示效果
mx的宽度 63.3 mm
nexus4的宽度 68.3 mm
mx实际显示宽度: 63.3*(80/320)= 63.3/5.35 =15.825mm
nexue4的实际宽度: 68.3*(80/384)= 68.3/4.8 =14.23mm