android app固定dp,Android屏幕适配—被偷走的dp

一、Android手机屏幕DPI

DPI概念自行百度

Android手机按照不同DPI分为:ldpi、mdpi、 hdpi、 xhdpi、 xxhdpi等。

在不同的DPI上,px和dp有不同的比例关系,关系如下

DPI类型

DPI

dp

px

ldpi

120

1

0.75

mdpi

160

1

1

hdpi

240

1

1.5

xhdpi

320

1

2

Nexus 5x

420

1

≈2.6

xxhdpi

480

1

3

Nexus 6/6p

560

1

3.5

二、不同设备的dp宽度

设备

分辨率

DPI

宽(px)

宽(dp)

HTC Tatoo

240x320

120 (ldpi)

240

320

LG Optimus

320x480

160 (mdpi)

320

320

Nexus one/s

480x800

240 (hdpi)

480

320

Galaxy Nexus

720x1280

320 (xhdpi)

720

360

Nexus 5

1080x1920

480 (xxhdpi)

1080

360

Nexus 5x

1080x1920

420

1080

≈411.4

Nexus 6/6p

1440x2560

560

1440

≈411.4

由上表可知:

在ldpi、mdpi和hdpi设备上屏幕的宽度都是320dp

在xhdpi和xxhdpi设备上屏幕的宽度都是360dp

而在420dpi和560dpi设备上屏幕的宽度都约等于411.4dp

三、面临的问题

目前主流的分辨率一般为720x1280和1080x1920,所以一般设计师在设计Android应用时会选择720x1280的画布进行设计,如果只切一套图,工程师会把图放到xhdpi的资源文件夹中,此时,在xhdpi和xxhdpi的屏幕上都可以正常适配,但是在hdpi的屏幕上就会出现问题。

从上面的表格可以知道在xhdpi和xxhdpi时,屏幕的dp宽都是360dp;而在480x800的hdpi时,屏幕的dp宽度是320dp,少了40个dp,如果屏幕的dp宽度保持360dp的话,需要的像素宽度应该是540px,但市面上大部分的hdpi的手机都是480px的像素宽度。

为了适配480x800的手机屏幕,需要设计师在切图的时候也要切出一套hdpi的图,并且是480*800分辨率下的hdpi的图。

另外在写布局文件设置宽度的时候,也要需要考虑这个差值,hdpi下的dp宽度应该是xhdpi或xxhdpi下的dp宽度的0.8~0.9倍

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值