【问题标题】:How to find min & max screen height/width ratio for all available Android phones?如何找到所有可用 Android 手机的最小和最大屏幕高度/宽度比?
【发布时间】:2012-10-10 13:44:31
【问题描述】:

我希望我的应用能够在任何 Android 设备上正确显示,无论屏幕大小、屏幕密度或屏幕高宽比如何。我想支持像 API 8 一样古老的 Android 设备。我可以为纵向、横向和可能的超大屏幕创建单独的布局,但除此之外,我不想为不同的密度或屏幕尺寸创建不同的布局。

我已阅读supporting multiple screens 上的 Android 指南。我尝试遵循这些准则,例如,对于小部件,我将它们的高度和宽度设置为 wrap_content 或 fill_parent,并且我避免使用特定的像素测量值。对于图像,我为不同的密度提供替代位图资源,或者有时我使用具有与密度无关的像素 (dip) 的特定大小,因此系统将在屏幕上以不同的密度正确调整其大小。

在过去的 2 年里,我可能已经阅读了数十次该指南。

我知道我可以为特定的屏幕尺寸和密度定义特定的资源(例如布局),但是我想支持数十或数百部手机,所以这似乎是徒劳的。我看到that guide 中的表 3 显示了一些常见的屏幕尺寸,但我想确保我的应用程序几乎可以在每部手机上运行。

在我看来,我需要知道的是最窄的屏幕(倾角)和最短的屏幕。也就是说,我想知道高度与宽度的比例。

例如,在纵向时,我可能有一个按钮列表或其他小部件。我真的很想知道哪款手机最短:宽高比最大,所以我可以看看我的布局是否在底部被切断。也许我也有 3 个标签:我想知道最窄的屏幕,这样我就可以确保标签不会在右侧被切断。

如果我知道当前所有 Android 手机的最低和最高 h/w 比,对于纵向,我可以仅在两个 Android 虚拟设备(甚至只是 Eclipse 中的自定义屏幕)上进行测试。

我已经开始研究Wikipedia’s list of Android devices,但一定有人有更好的方法。

【问题讨论】:

  • 不确定确切的最小值/最大值是多少,但如果您针对 2:1 和 1:2 进行测试,我认为您是安全的。超出该范围的任何设备都极为罕见。
  • 谢谢,这不是一个糟糕的启发式方法,但我想知道是否有人可以找出那里有哪些 Android 设备(解析维基百科页面或设备电子表格等)。
  • 我认为你应该停止控制周围的一切。只需遵循指南并相信一切都会奏效。

标签: android android-layout


【解决方案1】:

很遗憾,我还没有找到。我有这个链接:List of displays by pixel density 但并非所有设备都是 Android 设备。我知道有一些奇怪的设备具有方形屏幕比例(摩托罗拉)。但我会坚持使用Google's screen sizes list,您对 99.9% 的用户应该是安全的。

编辑1:stats about screen sizes and densities

Edit2:根据我的经验,我通常会进行 5 次快速检查:

  1. 16:9 比例的 HDPI 手机上的应用程序
  2. 4:3 比例的 MDPI 手机上的应用
  3. XHDPI 手机上的应用程序
  4. LDPI 手机上的应用程序
  5. 大屏幕平板电脑上的应用(通常是 MDPI)

我觉得在这 5 种情况下,我涵盖了所有屏幕密度(特别是检查图像尺寸)、最常见的屏幕比例(4:3 和 16:9,检查所有布局元素是否可访问),以及两个最常见的屏幕尺寸(手机和平板电脑)。

【讨论】:

  • 很高兴了解按像素密度排列的显示器列表。还有方形屏幕!天啊。但谷歌并没有说明他们的屏幕尺寸列表代表了多少百分比的用户——但他们必须拥有这些数据!
  • 没错,就是摩托罗拉 FlipOut。我怀疑它占据了很大的市场份额:)
  • 你得到了一些关于屏幕尺寸和密度的统计数据(见编辑后的答案)
猜你喜欢
  • 2023-02-18
  • 2013-01-12
  • 1970-01-01
  • 2015-01-21
  • 2016-03-22
  • 1970-01-01
  • 2013-09-23
  • 1970-01-01
  • 2014-12-21
相关资源
最近更新 更多