MrJ*_*Jre 16 android android-3.0-honeycomb android-2.3-gingerbread android-4.0-ice-cream-sandwich android-appwidget
可能是我,但是当我根据android页面上给出的公式计算最小app小部件大小时,我得不到正确的小部件宽度; 公式如下:
width(n)=(70 xn) - 30
当我想要一个5x1小部件时,正确的宽度将是(5*70) - 30 = 320dp.然而,当在motorola Xoom上测试它时,它解析为4x1小部件.我已经测试了不同的值,400dp对于带有Honeycomb的motorola xoom上的5x1似乎很好,但后来我在常规Galaxy Tab上用Gingerbread测试它然后它解析为6x1(就像人们期望的那样).
这里有两个问题;
pet*_*ejl 24
在我的4x1小部件中,我将这些维度用于res/values/dimens.xml:
<!-- size = (74 x n) - 2 -->
<dimen name="appwidget_margin">0dp</dimen>
<dimen name="appwidget_min_width">294dp</dimen>
<dimen name="appwidget_min_height">72dp</dimen>
Run Code Online (Sandbox Code Playgroud)
对于res/values-v14/dimens.xml:
<!-- size = (70 x n) - 30 -->
<dimen name="appwidget_margin">0dp</dimen>
<dimen name="appwidget_min_width">250dp</dimen>
<dimen name="appwidget_min_height">40dp</dimen>
Run Code Online (Sandbox Code Playgroud)
我使用小部件模板包为背景图像.
在官方指南中写道,res/values/dimens.xml中的默认边距应为8dp,但如果我使用8dp,则我的窗口小部件比桌面上的标准窗口小部件小(谷歌搜索,天气等).多数民众赞成是因为v1-v13的保证金是在背景图片中构建的:

我在HTC Desire,Nexus S,模拟器Android 2.2和模拟器Android 2.3.3上进行了测试.使用上面的模板包背景和配置,我的小部件的大小与其他标准小部件相同,并且在我测试的所有设备上看起来都很好.
各种发射器也存在问题.我推荐这篇文章阅读:http://radleymarx.com/blog/app-widget-padding-margins-in-ics-android/
rad*_*ley 10
没有太多设备完全遵循谷歌的建议公式.你最好使用几个xml-xxx文件夹,它们可以指定更准确的minWidth和minHeight,它们对应于不同的屏幕和操作系统.
现在我四只完全基于操作系统:
xml // standard
xml-v11 // Honeycomb grid
xml-v14 // ICS's new extra padding
xml-sw552dp-v14 // ICS tablet padding
Run Code Online (Sandbox Code Playgroud)
但是当我微调时,我可能需要为特定的dpis或屏幕添加一些新文件夹.
快速更新:
只有部分设备使用自动填充.Samsung和HTC具有使用全宽小部件的自定义UI,因此它们会覆盖其发射器上的OS填充.
| 归档时间: |
|
| 查看次数: |
13051 次 |
| 最近记录: |