以下に示すように、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" />
問題はAndroid1.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>
これはバグですか?もしそうなら、これの回避策は何ですか?このようにして、IceCreamSandwichの新しいウィジェットレイアウトの寸法に関する推奨事項に従いました。