drawable hdpi mdpi ldpi xhdpi

貌似是在Android2.1之前的时代,新建Android工程,工程会自动生成一个drawable的目录。

到了Android4.0时代,新建Android工程,工程会自动生成drawable-hdpi, drawable-ldpi, drawable-mdpi, drawable-xhdpi四个目录。

不同点在于,图片资源文件被细分了。系统会根据dip的大小选择对应目录下的资源文件。

drawable-hdpi 对应DPI为240

drawable-ldpi 对应DPI为120

drawable-mdpi 对应DPI为160

drawable-xhdpi 对应DPI为320

获取屏幕DPI(屏幕密度)方法:

[java]  view plain copy
  1. DisplayMetrics dm = new DisplayMetrics();    
  2. dm = getResources().getDisplayMetrics();  
  3. float density = dm.density;//屏幕密度(像素比例:0.75, 1.0, 1.5, 2.0)  
  4. int densityDPI = dm.densityDpi;//屏幕密度(每寸像素:120, 160, 240, 320)  

px与dip的换算:

density = 0.75, px : dip = 1 : 1.5

density = 1, px : dip = 1 : 1

density = 1.5, px : dip = 1.5 : 1


建议:

在开发过程中,请根据不同的DPI设计不同大小的图标,并将图标放在对应的目录下。千万不要放在drawable文件下,否则可能会引起图标大小不一致。

错误举例:

为1080P设计的的图标放在drawable下,在1080P下,图标会被放大。解决办法就是放到drawable-hdpi 目录下。


官方参考地址

http://developer.android.com/guide/practices/screens_support.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值