widgets example android widget android-appwidget homescreen dimension

example - Android AppWidget No More Room cuando se usa recurso dimen



android add widget (1)

Lo intenté y me pasó también con Android 1.6. Una solución rápida es crear diferentes carpetas xml (una para Android 1.6 y otra para las otras versiones). Entonces, podrías tener:

xml-v4 (para Android 1.6), que contiene dimensiones como valores numéricos
xml-v5 (para el resto), que contiene dimensiones como @ dimen / ..

o, podrías tener:

xml (para Android 1.6 - 3.2), que contiene dimensiones como valores numéricos
xml-v14 (para Android 4), que contiene las nuevas dimensiones

Lo malo es que tienes que duplicar los archivos XML de tu proveedor de appwidget, pero al menos funciona.

Mmm ... Estoy pensando en retirar el soporte para Android 1.6 ..... (ahora está en 1.3% ...).

Saludos, Yuvi

http://www.droidahead.com

Creé un archivo XML para un AppWidget como se muestra a continuación.

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" />

El problema está en Android 1.6. Aparentemente no me gusta usar las declaraciones @dimen para minWidth y minHeight. Cuando esto sucede y el usuario suelta un AppWidget en la pantalla, dice: "No hay más espacio en esta pantalla de inicio". Si utilizo las dimensiones explícitamente, vuelve a funcionar.

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>

¿Es esto un error y, en caso afirmativo, cuál es la solución para esto? Lo hice de esta manera para seguir las recomendaciones para las nuevas dimensiones de diseño de widgets de Ice Cream Sandwich.