Android多屏限定符定义

时间:2012-04-10 18:14:56

标签: android size screen qualifiers

O.K。,人 我想创建一个兼容大量设备和屏幕的布局。正如我一直在研究的那样,我发现最常见的屏幕分辨率是249x320,480x800,600x1024,720x1280(以及其他一些屏幕分辨率)。

好吧,在阅读完文档之后,我发现有两种方法可以做到这一点。 直到3.2 Android版本,我可以使用限定符作为“小,正常,大,xlarge”的布局,并将它们与“端口”(纵向)或“土地”(横向“。(

)结合起来。

现在,第二种方式(似乎是最推荐的)仅适用于Android 3.2及更高版本。您必须指定必须使用布局的最小宽度,无论屏幕方向如何(???)。

因为在使用第二种方法时你不能指定端口或地面限定符,我更喜欢第一种方法。 我的问题是:第一种兼容Android 3.2及更高版本的方法是什么?我必须使用Android的第一种方法吗? 3.2和Android的第二个> 3.2?如果是这样,我应该创建两个项目,或者可以组合这两个方法(为一般大小限定符和特定的最小宽度限定符创建大约10个布局大小)。我想这需要更多的资源。

谢谢,抱歉我的语言不好,

2 个答案:

答案 0 :(得分:1)

在Android中,您不会根据像素设计布局......您可以根据与密度无关的像素(dip或dp)进行设计。这些是通过设备的每英寸点密度缩放的设备像素。 Android有4个通用屏幕密度桶,你必须在适当的文件夹下为每个提供drawables(res / drawable-ldpi,res / drawable-mdpi,res / drawable-hdpi,res / drawable-xhdpi)。

使您的布局与众多设备兼容的其他方法是使用9png可伸缩图形,并使用依赖于dp的XML drawable来维度。

Android屏幕支持的推荐阅读:
http://developer.android.com/guide/practices/screens_support.html

就最小宽度限定符而言,您错过了在dp中指定最小宽度而不是像素的事实。检查本节中的表2:
http://developer.android.com/guide/topics/resources/providing-resources.html#AlternativeResources

第一种方法适用于所有设备,包括Android 3.2 +。

答案 1 :(得分:0)

可能是使用两种布局限定符的最佳方法: -

  1. RES \布局大
  2. RES \布局sw720dp
  3. 使用a layout alias在两个目录中设置相同的布局。