Widget-Ränder werden beim ICS-Telefon mit TouchWiz-Start nicht angewendet?
Ich habe eine App mit einem Widget. Ich weiß, dass Android 4.0 oder höher automatisch einen Rand um das Widget erstellt, daher habe ich den Vorschlag für implementiertDiese Entwickler-API-Seite um die Widgets auf verschiedenen Android-Versionen ungefähr gleich groß zu machen. Ich habe das Widget im Emulator auf API 10, 14 und 15 getestet und es funktioniert einwandfrei. Das Widget sieht in allen Versionen gleich aus. Wenn ich es jedoch auf meinem SGS2-Handy mit Android 4.0.3 teste, gibt es keine Ränder! Wie kann das sein? Was vermisse ich? Hat jemand anderes dieses Verhalten erlebt?
!
Hier ist meinsres / 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>
Zuerst dachte ich, dass es etwas damit zu tun hat, dass das Widget nicht wie beschrieben ordnungsgemäß aktualisiert wirdHierDas Entfernen und erneute Hinzufügen des Widgets hilft jedoch nicht. Ich habe auch ein bisschen mit den Einstellungen experimentiert:
RahmenmaxHeight
undmaxWidth
in demwidget_info.xml
Datei funktioniert nicht, sie scheint sowohl vom Emulator als auch vom Telefon ignoriert zu werden.Ändernlayout_margin
zupadding
in demwidget.xml
Datei hat keine Auswirkung, Widget sieht gleich aus (aber im Emulator API10 hat Widget jetzt auch keine Ränder)Wechseln0dp
zu16dp
in demres/values-v14/dimens.xml
Die Datei wirkt sich sowohl auf das Telefon als auch auf den Emulator aus, die Größe des Widgets auf dem Telefon und dem Emulator ist jedoch unterschiedlich.BEARBEITEN: Ich habe GO Launcher Ex auf dem Telefon installiert und das Widget weist dann Ränder auf. Ich denke, dies ist ein spezielles Problem für den TouchWiz-Launcher von Samsung. Kann das jemand bestätigen? Ich bin auch an Lösungen interessiert, mit denen das Widget bei Verwendung von TouchWiz (mehr oder weniger) gleich aussieht.