我创建了一个适用于 Nexus 7 的 Android 应用程序。
在资源文件夹中,我创建了两个文件夹,layout
, layout-land
Nexus 7" 选项卡。到目前为止,一切都工作正常。现在我想为 Samsung Galaxy S3 创建不同的布局。为此,我在资源中创建了一个文件夹layout-large
& layout-large-land
。但是,问题就在这里。现在,对于 Nexus 7 来说,布局也定义在layout-large
正在加载文件夹。如何阻止呢?如何为 Nexus 7" 选项卡和 Galaxy S3 手机创建不同的布局?我已阅读支持多屏 http://developer.android.com/intl/es/guide/practices/screens_support.html文档。但我无法理解,因为 Nexus 7 的屏幕尺寸是 1204 X 800,而三星 Galaxy S3 的屏幕尺寸是 720 X 1280。
如何为具有不同屏幕分辨率和显示尺寸的不同设备创建不同的布局?另外,根据设备大小,我想更改应用程序中的几个值。那要怎么做呢?
According to the Supporting Multiple Screens http://developer.android.com/guide/practices/screens_support.html
预选赛如small
, normal
, large
and xlarge
is for Screen Sizes
,这意味着 Nexus 7 将使用以下资源large
限定符,如果您提供的话。因此,在创建文件夹之前large
限定符中,Nexus 7 将从默认布局文件夹加载资源。至于ldpi
, mdpi
, hdpi
and xhdpi
是针对屏幕密度。
为了解决您的问题,您需要:
将Galaxy S3的布局定义放入layout中,将Nexus 7的布局定义放入layout-sw600dp中。请参考Android开发者博客:让您的应用程序为 Jelly Bean 和 Nexus 7 做好准备 http://android-developers.blogspot.co.uk/2012/07/getting-your-app-ready-for-jelly-bean.html
将 Galaxy S3 的资源(图像或可绘制内容)放入 drawable-xhdpi,将 Nexus 7 的资源(图像或可绘制内容)放入可绘制-tvdpi 或可绘制-hdpi。
希望它可以帮助你,如果你有任何其他问题,请告诉我:)
以下是一些有用的参考:
什么布局适合 720x1280 Android 设备? https://stackoverflow.com/questions/11008199/what-layout-is-suitable-for-720x1280-android-devices
屏幕宽度限定符 http://developer.android.com/guide/topics/resources/providing-resources.html#ScreenWidthQualifier
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)