www.yzc261.comandroid 图片位置规范

( www.yzc261.com )

在android开发里,我们常常会给应用添加背景图片或给按钮添加背景图片等,但应该放在哪个文件夹里,又怎么设定根据不同分辨率放图片,调用图片?

根据分辨率,也就是所谓的屏幕大小(Screen Size)也可以的,
在res/下面新建一个drawable-1024×768/的文件夹就可以满足了。

但是不推荐这么做,不要根据分辨率去选择图片。
首先建议楼主读一下Android的屏幕分辨率的相关文章
官方文档里屏幕相关screens_support

做法有很多
1.SDK提倡的做法就是在res/下面新建不同的图片资源文件夹
res/drawable-ldpi/
res/drawable-mdpi/
res/drawable-hdpi/
res/drawable-xdpi/
来分别存放我们需要的图片资源,分别对应
0.5x
1x
1.5x
2x
的切图。也就是说,你的设计稿是640×960一般认为是2x的,那么
ldpi/下就是160×240,
mdpi/下就是320×480,
hdpi/下就是480×720,
xdpi/下就是640×960。
但是在写布局的时候,不要写px,除了一些(比如边框什么的可以用),其他都用dip来写你的View的大小。

这么做的好处是比较简单完全遵照SDK的规范来实现。适合一般的App。

2.所有的图片资源存放在assert下面,用流读取之,并且在读取的时候根据不同的屏幕的像素密度去设置BitmapFactory.Option.inSampleSize,来自动的调整获取到的bitmap的大小。
这么做的好处是可以用一套图片。适合游戏类的开发,当然也适合一般App。

res资源文件夹中有分类似如下这些文件夹:

  • drawable-mdpi
  • drawable-ldpi
  • drawable-hdpi

后面的mdpi的dpi是指每英寸的像素点数,就是屏幕的分辨率;m、l、h则是m中、l低、h高。

望文生义,你应该把针对不同分辨率的图片分别放在对应的位置中去,名字要一样,这样他们的资源ID就是相同的。

至于按设备调用对应分辨率图片的问题,android会自己帮你解决的。

(看完/读完)这篇文章有何感想! www.yzc261.com的分享…

发表评论

电子邮件地址不会被公开。 必填项已用*标注