我为 AppWidget 创建了一个 XML 文件,如下所示。
xml/appwidget_4x1.xml
<?xml version="1.0" encoding="utf-8"?>
<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
android:minWidth="@dimen/AppWidget_4Cell"
android:minHeight="@dimen/AppWidget_1Cell"
android:updatePeriodMillis="0"
android:previewImage="@drawable/appwidget_4x1_preview"
android:initialLayout="@layout/appwidget_4x1_loading"
android:resizeMode="horizontal"
android:minResizeWidth="@dimen/AppWidget_3Cell" />
问题出在 Android 1.6 中,它显然不喜欢我对 minWidth 和 minHeight 使用 @dimen 语句。当这种情况发生并且用户在屏幕上放置一个 AppWidget 时,它会说:“这个主屏幕上没有更多空间了。” 如果我明确使用尺寸,它会再次开始工作。
res/values/dimens.xml (1.6 - 3.2)
<dimen name="AppWidget_1Cell">72dp</dimen>
<dimen name="AppWidget_4Cell">294dp</dimen>
res/values-v14/dimens.xml (4.0+)
<dimen name="AppWidget_1Cell">40dp</dimen>
<dimen name="AppWidget_4Cell">250dp</dimen>
这是一个错误,如果是这样,有什么解决方法?我这样做是为了遵循 Ice Cream Sandwich 的新小部件布局尺寸的建议。