【问题标题】:App widget inconsistent sizing between tablet and phone平板电脑和手机之间的应用小部件尺寸不一致
【发布时间】:2013-03-02 02:56:48
【问题描述】:

我正在尝试设计一个应用程序,它重现标准应用程序快捷方式主屏幕图标的快捷方式样式,但作为小部件。请注意,这目前只是查看标准的 Android 主屏幕。

我使用 DDMS -> Eclipse 的设备视图中的“Dump View Hierarchy for UI Automator”工具进行了以下观察:

1 x 1 方格中给出的空间根据屏幕密度、方向以及手机主屏幕是处于“手机模式”还是“平板电脑模式”而变化(启动 4.x 模拟器,您可以通过背景判断除其他外)。屏幕密度会按预期影响尺寸(0.75、1、1.5、2.0 密度因子缩放),但方向和“主屏幕模式”非常难以预测。具体来说:


主屏幕上 1x1“正方形”的尺寸

手机模式:

  • 纵向:80dp x 100dp = 4:5 纵横比
  • 横向(如果可用 - 未经彻底测试):106dp x 74dp = 53:37 纵横比

平板模式:

  • 纵向:96dp x 96dp = 1:1 纵横比
  • 横向:96dp x 96dp = 1:1 纵横比

如您所见,几乎没有任何一致性,但这些是主屏幕上“正方形”的尺寸。当查看实际分配给小部件的空间时,它会变得更糟(是的,它确实不同于系统快捷方式小部件可用和使用的方形空间):


1x1“正方形”中小部件的尺寸

手机模式:

  • 纵向:80dp x 100dp = 4:5 纵横比
  • 横向(如果可用 - 未经彻底测试):90dp x 58dp = 45:29 纵横比

平板模式:

  • 纵向:72dp x 72dp = 1:1 纵横比
  • 横向:72dp x 72dp = 1:1 纵横比

所以我坚持:

  • 手机和平板电脑模式之间的纵横比不一致
  • 在某些情况下,为应用小部件提供的区域比应用快捷方式的区域更小。因此,小部件的相对大小和感知大小在平板电脑和手机上看起来会大不相同?
  • 较小的区域甚至没有垂直居中,它们大多与 2dp 上边距对齐,这意味着它们甚至看起来与相邻的应用程序快捷方式不对齐,更不用说在尝试产生类似的外观时通过小部件的快捷方式

为了形象化,下图显示了一个默认的系统快捷方式(周围有一个红色框显示“方形尺寸 - 系统快捷方式和小部件始终共享)。旁边是我的小部件,蓝色突出显示了MATCH_PARENT 设置的边界,因此小部件实际上可以在其“正方形”内绘制:

电话 - 端口:

平板电脑 - 土地:

平板电脑 - 端口:

从这里最重要的是,平板电脑上小部件的蓝色区域是否甚至不包括空间系统快捷方式绘制其文本的地方?

有没有人了解:

  1. 为什么主屏幕如此不一致?
  2. 为什么应用小部件没有与系统快捷方式相同的绘图空间/或者应该是,我做错了什么?
  3. 我是否应该做其他事情,或者只是接受对于占用其所有给定绘图空间的 1x1 小部件,它在平板电脑上看起来比在手机上看起来“更小”(与其周围环境相比) ?

【问题讨论】:

    标签: java android android-view homescreen android-appwidget


    【解决方案1】:

    更好的是,许多启动器允许用户自定义其网格的大小。根据design guidelines for App Widgets,您不能依赖所有设备上的确切尺寸。相反,确定最小宽度和高度,并让主屏幕确定布局占用多少个正方形。

    它们确实提供了一些关于单元格最小大小的预期指导(并且您的所有数字都比看起来要大得多),但是自定义启动器可能再次将这个最小值降低到更低。

    我发现最好关注布局中需要包含哪些组件(按钮等),然后按照Metrics and Grids design guidelines 确定您的最小尺寸(注意边距会在 Android 4.0+ 设备上自动添加,但不会在App Widget Design guidelines 中所述的浮动文本。

    【讨论】:

    • 是的,最烦人的,我什至没有看过三星、HTC 等屏幕。我接受你关于正确程序的观点,我仍然主要想知道为什么一个小部件被赋予不同的空间量,而不是在同一屏幕上具有相同密度、启动器应用程序、模型等的快捷方式的确切原因。在屏幕上分配了一个“正方形”?
    【解决方案2】:

    您可以在布局中管理屏幕尺寸,以便为不同的屏幕尺寸以及横向和纵向创建不同的布局。

    在您的资源文件夹中创建以下布局,如下所示:

    布局-大

    布局小

    布局-xlarge

    布局-风景

    然后将您的 XML 文件复制到其中并检查不同设备的预览屏幕,您可以根据此想法修改主屏幕中小部件的大小。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-09-02
      • 2012-02-10
      • 2012-12-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-01
      • 1970-01-01
      相关资源
      最近更新 更多