【发布时间】: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 设置的边界,因此小部件实际上可以在其“正方形”内绘制:
电话 - 端口:
平板电脑 - 土地:
平板电脑 - 端口:
从这里最重要的是,平板电脑上小部件的蓝色区域是否甚至不包括空间系统快捷方式绘制其文本的地方?
有没有人了解:
- 为什么主屏幕如此不一致?
- 为什么应用小部件没有与系统快捷方式相同的绘图空间/或者应该是,我做错了什么?
- 我是否应该做其他事情,或者只是接受对于占用其所有给定绘图空间的 1x1 小部件,它在平板电脑上看起来比在手机上看起来“更小”(与其周围环境相比) ?
【问题讨论】:
标签: java android android-view homescreen android-appwidget