屏幕支持使用layout-large,layout-normal和layout-xlarge文件夹的多个设备

时间:2013-07-28 19:51:28

标签: android android-layout screen android-screen-support

我在 res 文件夹中创建了 layout-large layout-normal layout-xlarge 将所有xml文件复制到这些布局文件夹

首先,我想问一下布局默认)和默认之间的区别   layout-normal 文件夹?

我知道如果我在大屏幕尺寸上运行应用程序,应用程序将从 layout-xlarge 中获取xml文件。 所以我使用 tap2 10.1 中的FrameLayout按照我的意愿制作了 layout-xlarge 中的所有元素, 但是当我在 note2或s3 mobile 中运行时,它看起来不同,因为屏幕尺寸不同

那么如何让应用程序在tap2 10.1(1,280 x 800)和note2或s3 mobile(1,280 x 720)尺寸下运行?

2 个答案:

答案 0 :(得分:12)

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

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

所以layoutlayout-normal文件夹是相同的,但在新的Android API中,不再有layout-normal文件夹,只有布局文件夹。此外,您必须知道应用程序运行时是否没有屏幕大小的特定布局,默认情况下,应用程序采用“默认”布局。

修改

您可以在同一文件夹中使用不同的屏幕分辨率,您可以从此图像中学习:

enter image description here

如果您需要针对特定​​分辨率的更具体的布局,则必须在运行时检测确切的屏幕尺寸。

答案 1 :(得分:0)

Supporting Multiple Screens开始,您应该像这样定义布局文件夹

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

(基于屏幕类型)

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