ウィジェット付きのアプリがあります。Android 4.0以降ではウィジェットの周囲に自動的にマージンが作成されることを知っているので、この開発者APIページに提案を実装して、異なるAndroidバージョンでウィジェットをほぼ同じサイズにしました。API 10、14、および15のエミュレーターでウィジェットをテストしましたが、正常に動作します。ウィジェットはすべてのバージョンで同じように見えます。ただし、Android 4.0.3を搭載したSGS2スマートフォンでテストすると、マージンはありません。どうすればいいの?私は何が欠けていますか?他の誰かがこの行動を経験しましたか?
!
これが私のres/xml/widget_info.xmlです
<?xml version="1.0" encoding="utf-8"?>
<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
android:initialLayout="@layout/widget"
android:minHeight="40dp"
android:minWidth="110dp"
android:updatePeriodMillis="60000" >
</appwidget-provider>
res / layout / widget.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/widget_mainlayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="@dimen/widget_margin"
android:background="@drawable/widget_background" >
</RelativeLayout>
res / drawable / widget_background.xml
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<stroke
android:width="2dp"
android:color="#222222" />
<gradient
android:angle="225"
android:startColor="#DD2ECCFA"
android:endColor="#DD000000" />
<corners android:radius="7dp" />
</shape>
res / values / dimens.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<dimen name="widget_margin">8dp</dimen>
</resources>
res / values-v14 / dimens.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<dimen name="widget_margin">0dp</dimen>
</resources>
最初は、ここで説明されているようにウィジェットが適切に更新されていないことに関係があると思いましたが、ウィジェットを削除して再度追加しても効果はありません。また、設定を少し試しました。
- 設定
maxHeight
とファイルmaxWidth
内widget_info.xml
が機能しないため、エミュレータと電話の両方で無視されているようです。 - ファイル内でに変更
layout_margin
しても効果はありません。ウィジェットは同じように見えます(ただし、エミュレーターAPI10ウィジェットではマージンもありません)padding
widget.xml
- ファイル内の
0dp
をに変更すると、電話とエミュレーターの両方に影響がありますが、電話とエミュレーターでのウィジェットのサイズは異なります。16dp
res/values-v14/dimens.xml
編集: 携帯電話にGO Launcher Exをインストールしましたが、ウィジェットに余白があります。これは、SamsungのTouchWizランチャーに固有の問題だと思いますか?誰かがこれを確認できますか?TouchWizを使用するときにウィジェットを(多かれ少なかれ)同じように見せるためのソリューションにも興味があります。