我应该在不同的屏幕尺寸下放置背景图片?
我一直在阅读关于drawable-XXdpi
文件夹,并且我创建了所有尺寸的图标。我应该在不同的屏幕尺寸下放置背景图片?
现在我想要做的是在我的主屏幕上放置一个背景图像。而我现在的假设是,我现在不使用DP
,而是使用PX
,因为我的背景图片需要填写所有pixels
。
当这个假设是正确的,我在哪里把我创建的背景图片?
我创建了一个用于480*320
,0 800*400
的最大1600x2560
。 在我的假设我不能把他们放在drawable-XXdpi
文件夹,因为那些是DPI
相关,我需要填写所有pixels
。
I don't work with DP at this moment but with PX
...你应该始终使用使用DP。
要填充所有可用空间,只需使用android:background
而不是android:src
。
请注意,图像将被拉伸(如果你不使它成为9 patch - 这也将被拉伸,但是以“受控方式”)。
到create a background with the exact pixel size
不是一个好习惯。
你最终会看到过大的图像。 -
更好的做法包括(不是相互排斥的,他们可以通过使用Layer-List堆叠):
- stretchables(如9贴剂)
- 瓦片(无缝平铺图像)
- 可绘制(其是矢量,如SVG文件)
这些的包括:
一个 - 形状
b - 梯度
ç - ... - SVG(通过第三方库)
- ...
还要考虑“确切的像素大小”可能与您的预期不同。
你必须考虑到StatusBar,ActionBar/ToolBar,MenuBar,...
没有用于放置px文件的单独文件夹体系结构。您需要使用drawable-hdpi,drawable-mdpi,drawable-xhdpi,drawable-xxhdpi。
您可以将不是特定于每个dpi的drawable放到drawable-nodpi文件夹中。 但基本上,正如Der Golem所描述的,您应该始终使用dp。
针对不同的dps近似像素值是这样的:
ldpi = 600.00px x 360.00px
mdpi = 800.00px x 480.00px
hdpi = 1200.00px x 720.00px
xhdpi = 1600.00px x 960.00px
xxhdpi = 2400.00px x 1440.00px
检查这些链接了解详情:
http://pixplicity.com/dp-px-converter/
http://developer.android.com/guide/practices/screens_support.html
我会把它放在'drawable'文件夹中(与非dpi相关),但不知道它的最佳实践 – 2014-12-02 08:34:44
@Der Golem:我不应该使用精确像素大小而不是使用拉伸图像创建背景吗? – Michel 2014-12-02 13:20:37
@Der Golem:谢谢!你能否让你的评论成为答案?您的意见明确表示我不应该使用px。 – Michel 2014-12-04 09:20:34