我正在开发一个应用程序,但我遇到了一个严重的问题(在我个人看来,Android真的很大失败)。 如果您尝试在API 13之前支持多个屏幕(添加了“小宽度”功能),则必须使用屏幕尺寸(小型,中型等)和密度(ldpi,mdpi等)为不同的屏幕提供不同的布局屏幕。 一切顺利,好,直到你想要支持10“平板电脑和7”平板电脑。 例如,具有1280X800分辨率和160密度(大多数平板电脑)的10英寸平板电脑和Kindle(1024x600,密度160,7')对于Android来说是相同的,这意味着在API 13之前(并非所有平板电脑都运行3.2)但我不能单独为每一个提供不同的布局/ dinmension值。
我真的不想在代码中做所有讨厌的计算只是为了确定文本的大小。我很确定很多人都会遇到这个问题。
有谁知道这方面的解决方案?
谢谢, ELAD
答案 0 :(得分:2)
使用旧的限定符系统,7英寸平板电脑将注册为large
屏幕,10英寸平板电脑将注册为xlarge
屏幕(后者在Gingerbread中引入限定符)。
编辑:来自最新的Android兼容性定义文档(CDD):
具体而言,设备实现必须根据以下与逻辑密度无关的像素(dp)屏幕尺寸报告正确的屏幕尺寸。
- 设备的屏幕尺寸必须至少为426 dp x 320 dp('小')
- 报告屏幕尺寸“正常”的设备必须具有至少470 dp x 320 dp的屏幕尺寸
- 报告屏幕尺寸“大”的设备必须具有至少640 dp x 480 dp的屏幕尺寸
- 报告屏幕尺寸'xlarge'的设备必须具有至少960 dp x 720 dp的屏幕尺寸
希望有资格使用Google Play的设备必须遵守本文档的规定。从技术上讲,像Kindle Fire这样的设备不需要遵循这些规则,因为他们使用自己的应用程序商店,但我没有亲眼看到他们流浪。这些规则的火是很大的,因为它的最小宽度是< 720dp。