我的 android 应用程序将如何在多个屏幕分辨率设备上运行?
Posted
技术标签:
【中文标题】我的 android 应用程序将如何在多个屏幕分辨率设备上运行?【英文标题】:How my android app will run on multiple screen resolution devices? 【发布时间】:2012-01-05 09:57:37 【问题描述】:我开发了一个 android 应用程序并在 HVGA 模拟器上运行它。它可以在任何 HVGA 设备(即 mdpi)上成功运行。但是,如果我尝试在小屏幕分辨率设备(即 QVGA)上运行,那么我的按钮看起来好像向下并且不适合小屏幕......
那么我怎样才能在多个屏幕分辨率上成功运行我的 android 应用程序呢?
【问题讨论】:
How to support for multiple resolutions?的可能重复 【参考方案1】:按照这些说明进行操作
-
在 yourAppFolder/res/ 中创建一个名为 layout-small 的文件夹(*稍后会详细介绍此主题)
在此文件夹中插入所有需要针对小屏幕进行特殊处理的 xml 布局项(不必复制所有“正常”布局文件,但如果您愿意,可以这样做)
根据需要更改此布局中的文件
这种方法会发生什么:
如果设备有一个非小屏幕,将加载和使用默认布局(“layout”文件夹中的那个),否则如果屏幕属于“small”类别,“layout-small”中的文件将改为使用(仅当有同名的可用时,否则将使用“布局”中的那个
*关于文件夹命名:该策略是 android 支持的旧策略。现在还有另一种,更精确但也更复杂(例如:指定最小必要宽度)。无论如何,这仍然受支持,只需注意 eclipse 可能会建议您一些替代方案。目前,我仍在使用旧的命名策略进行开发。
【讨论】:
【参考方案2】:我认为最好针对每种屏幕尺寸和分辨率设计布局。在android中很容易。从资源的“layout”文件夹复制您的布局,并将其粘贴到“layout-land”、“layout-xlarge”、“layout-xlarge-land”和...文件夹中,并更改您需要的设置。
你可以查看这个link:
【讨论】:
请注意,“layout-xx”方法不再被安卓操作系统认可。现在有另一个命名程序(即使仍然支持旧的)【参考方案3】:在 UI 构建器(Eclipse 插件的一部分)中,您可以为多种屏幕尺寸和分辨率构建界面。要为不同的分辨率制作不同的布局,只需按照以下说明构建备用布局:
http://developer.android.com/guide/practices/screens_support.html#support
【讨论】:
以上是关于我的 android 应用程序将如何在多个屏幕分辨率设备上运行?的主要内容,如果未能解决你的问题,请参考以下文章
如何开发 android 应用程序以在不同的屏幕分辨率下工作