Android支持所有平板电脑 - 分类drawables和布局

时间:2013-01-04 04:33:30

标签: android screen-resolution resourcebundle

我见过很多线程在stackoverflow中讨论这个问题(比如thisthisthis),我已经阅读了有关支持多个屏幕和设计的文档。但我仍然不清楚drawables的文件夹结构和不同屏幕的布局

我正在开发一款支持Android手机和平板电脑的应用。我的项目显示了一些图像,需要在所有可能的Android设备中以高质量显示。我需要告诉我的设计师为所有这些决议进行设计。

从文档中我似乎应该为以下分辨率添加drawable(最后给出可绘制的文件夹名称),

1) 240 x 320  - Phone LDPI  -> drawable-ldpi

2) 320 x 480  - Phone MDPI  -> drawable-mdpi

3) 480 x 800  - Phone HDPI  -> drawable-hdpi

//Now for tablets

4) 1024x600   - Tablet LDPI -> ??

5) 1280x800   - Tablet MDPI -> ??

6) 1536x1152  - Tablet HDPI -> ??

7) 2560x1600  - Tablet XHDPI-> ??

从支持multiple screens documentation开始,我似乎可以使用像

这样的文件夹
1) drawable-sw600dp  ( a 7” tablet (600x1024 mdpi).)
2) drawable-sw720dp   (a 10” tablet (720x1280 mdpi, 800x1280 mdpi, etc).

但是对于分辨率在1536x1152,2560x1600等范围内的平板电脑呢?10'分辨率范围(720 x 1280等)对他们来说似乎很小..我的客户端有一个分辨率为2560×1600的Nexus 10我想要我的应用程序看起来很完美..

我知道,九个补丁图片,使用wrap_content的布局和其他类似的好习惯。但是对于这个项目,我有一些图像,根据要求,应该在所有常见的屏幕上看到更清晰,我至少在我的包中需要几个版本的图像。

那么我应该向设计师提及什么和哪些决议?如何将它们分类到正确的文件夹名称。

5 个答案:

答案 0 :(得分:18)

实际上平板电脑按大小而不是按dpi分类,即7“标签为drawable-large而”10“标签为drawable-xlarge。现在你可以再次按dpi分类,如drawable-large-hdpi,这意味着它是一个7“的Tab,具有高密度。

您可以使用SW最小宽度概念来定位,请参阅Application Skeleton to support multiple screen并对其进行计算。

平板电脑平板电脑分为两种尺寸。

  

7“(1024X(600-48(导航栏)))= 1024 X 552(可绘制大)
      10“(1280X(800-48(导航栏)))= 1280 X 752(drawable-xlarge)

并且对于2560x1600,使用公式

计算SW dp
  

px =设备的宽度
  dpi =设备密度

给出的公式

px = dp * (dpi / 160)
如果您有px值

,则交换公式

dp = px / (dpi / 160)

所以drawable-swxxxdp将完成这项工作

答案 1 :(得分:2)

AFAIK设备显示有两种变量:像素密度和屏幕尺寸。 两者在理论上都是独立的,但在市场上,它们从低端高端设备一起变化。

不同位图分辨率和细节级别的像素密度要求(例如36X36到96X96图标)。

屏幕尺寸需要更好地利用房地产(例如,手机的多活动布局,平板电脑的碎片布局)。不像像素密度那么重要,但很好,因为平板电脑用户可能会发现电话布局过于平淡,浪费屏幕空间。

所以:

  • 要覆盖大多数像素密度,您必须有不同的像素密度 versions of drawablesldpi,mdpi,hdpi and xhdpi。喜欢9个贴片的抽屉,这些都适合各处。

  • 要覆盖大多数屏幕尺寸,您必须具有不同的layout arrangementsresponsive layout designsmall,large and xlarge值。此外,纵向和横向的不同布局有时也很好。

  • Android也允许您混合配置组合。例如。 drawable-large-hdpi等。

  • 不惜一切代价避免硬编码像素协调和尺寸,使用密度或百分比。

答案 2 :(得分:2)

我们也可以将xxhdpi用于drawable-xxhdpi

等drawable

xxhdpi(480dpi,Android 4.1或更高版本)

或参考以下链接中的“Android表格列”

http://en.wikipedia.org/wiki/Smartphone

答案 3 :(得分:1)

我使用的是:

  • 一个布局文件夹(或第二个:layout-land)
  • 一些带有dimens.xml(-hdpi,-large,-xlarge)的值文件夹,用于不同的大小,字体等。
  • drawables:-hdpi包含大多数图片,它们可以缩小所有手机的尺寸; - 适用于7英寸平板电脑; - 适用于10英寸平板电脑。或者只是-hdpi和-large。

我可能会验证这种方法,即使用-sw600dp和-sw720dp,但现在它可以正常工作。

答案 4 :(得分:-1)

你好我认为android可绘制的分辨率是 -

10“ - 1280 X 800

7“ - 1024 X 600

xhdpi - 960 x 720

hdpi - 800 X 480

mdpi - 480 X 320