我正在开发一个android应用程序,它绝对需要支持android 2.1+设备,包括平板电脑和手机。
棘手的是,我希望能够提供与Bone Fide Honeycomb平板电脑大致相同的Android 2.x平板电脑用户体验。我正计划使用兼容包,以便碎片支持始终可用,但…
我现在遇到的问题是,我买了一个汉斯塔布来测试,发现它向应用程序报告它有一个“大”屏幕,尽管实际上是10.1英寸。从技术上讲,这将使它成为“xlarge”,但这一类别当然不包括在android 2.2(它运行的)中,因此它是“大的”。我原本只想使用资源限定符,把所有的xlarge设备都当作平板电脑,其他的都当作手机,但现在我意识到我做不到。
把所有的超大屏幕和大屏幕设备都当作平板电脑来处理会不会很糟糕?据我所知,这将包括戴尔Streaks和其他5至7英寸屏幕设备。
有更好的选择吗?我还没有真正了解片段,所以基于片段的解决方案可能对拥有的人来说是显而易见的。
我注意到,通常,我安装在汉斯帕德手机上的应用程序使用的都是普通的手机用户界面,除了Evernote使用的是特定的平板电脑界面——我希望我知道他们是怎么做到的。
android 3.2中引入的新的“最小宽度”资源限定符将通过完全取消通用的屏幕大小桶来解决这个问题。大概我可以通过编写代码来复制这种方法来计算dp中的屏幕宽度,然后根据需要向活动添加片段。这明智吗?如果那会很痛苦的话,我宁愿不做那种工作。
干杯
最佳答案
把所有的超大屏幕和大屏幕设备都当作平板电脑来处理会不会很糟糕?
如果你的问题真的是“对-large
和-xlarge
设备使用相同的布局等可以吗”,那当然可以。我当然会从这里开始。
请记住,设备制造商实际上是决定什么是-large
的人。我发现一些制造商创建了5“设备来将其归类为-normal
,这并不奇怪,因为他们觉得-normal
应用程序在他们的设备上比在-large
应用程序上运行得更好。
我注意到,通常,我安装在汉斯帕德手机上的应用程序使用的都是普通的手机用户界面,除了Evernote使用的是特定的平板电脑界面——我希望我知道他们是怎么做到的。
可能使用-large
/-xlarge
资源。我不知道他们是否在使用碎片。
就屏幕大小而言,片段确实适用于这样的情况,即-large
/-xlarge
用户界面基本上是一堆-small
/-normal
大小的用户界面,就像乐高积木(r)一样被拼凑在一起。在evernote的例子中,他们的-large
/-xlarge
用户界面不符合这个模式,所以他们可能使用了片段,也可能没有使用片段。
片段为内存管理和配置更改(例如屏幕旋转)提供了一些其他优势,因此即使您没有在主要屏幕大小组之间共享片段,也可以考虑使用片段。
这明智吗?
如果可能的话,我会推迟做出这个决定,直到冰淇淋三明治上市,我们开始观察这些东西将如何在更小的屏幕设备上播放。