Android 屏幕支持使用布局大、布局正常和布局xlarge文件夹的多个设备

Android 屏幕支持使用布局大、布局正常和布局xlarge文件夹的多个设备,android,android-layout,screen,android-screen-support,Android,Android Layout,Screen,Android Screen Support,我在res文件夹中创建了大布局、普通布局和大布局,并将所有xml文件复制到这些布局文件夹中 首先,我想问一下布局(默认设置)和 布局正常文件夹 我知道如果我在大屏幕上运行应用程序,应用程序将从layout xlarge获取xml文件。 因此,我使用tap2 10.1中的FrameLayout使layout xlarge中的所有元素看起来与我想要的一样, 但是当我在note2或s3mobile中运行它时,它看起来不同,因为屏幕大小不同 那么,如何使应用程序以tap2 10.1(1280 x 800

我在res文件夹中创建了大布局普通布局大布局,并将所有xml文件复制到这些布局文件夹中

首先,我想问一下布局(默认设置)和 布局正常文件夹

我知道如果我在大屏幕上运行应用程序,应用程序将从layout xlarge获取xml文件。 因此,我使用tap2 10.1中的FrameLayout使layout xlarge中的所有元素看起来与我想要的一样, 但是当我在note2或s3mobile中运行它时,它看起来不同,因为屏幕大小不同

那么,如何使应用程序以tap2 10.1(1280 x 800)和note2或s3 mobile(1280 x 720)大小运行?

有关于如何支持所有屏幕大小的官方说明。如前所述,布局文件夹包括:

res/layout/my_layout.xml             // layout for normal screen size ("default")
res/layout-small/my_layout.xml       // layout for small screen size
res/layout-large/my_layout.xml       // layout for large screen size
res/layout-xlarge/my_layout.xml
因此
layout
layout normal
文件夹是相同的,但是在新的Android API中不再有layout normal文件夹,只有layout文件夹。此外,您还必须知道,如果应用程序运行时没有特定的屏幕大小布局,则默认情况下,应用程序采用“默认”布局

编辑

您可以在同一文件夹中使用不同的屏幕分辨率,您可以从以下图像中了解到:

如果您想要更具体的布局以获得特定的分辨率,您必须在运行时检测确切的屏幕大小。

从中,您应该像这样定义布局文件夹

res/layout/my_layout.xml              // layout for normal screen size ("default")
res/layout-large/my_layout.xml        // layout for large screen size
res/layout-xlarge/my_layout.xml       // layout for extra-large screen size
res/layout-xlarge-land/my_layout.xml  // layout for extra-large in landscape orientation
(屏幕类型基于)


但是每个文件夹中都有多个大小,例如1280 x 800和1280 x 720,它们都在布局XLarge中只是为了确认,当您创建布局和布局大型xml文件时,设备将根据硬件选择适当的布局?也就是说,您不必添加任何代码来检查屏幕大小,然后告诉它使用哪种布局?
xlarge screens are at least 960dp x 720dp
large screens are at least 640dp x 480dp
normal screens are at least 470dp x 320dp
small screens are at least 426dp x 320dp