Виджет отображается как 0x0 и вылетает Launcher - PullRequest
0 голосов
/ 02 декабря 2011

Итак, я объявил виджет для своего приложения и хотел попробовать его на эмуляторе Ice Cream Sandwich, однако при его выборе происходит сбой программы запуска.

Проблема в том, что программа запуска думаетwidth и heigt будут равны 0 (он также отображает мой виджет как виджет 0x0), поэтому я предполагаю, что в моем объявлении есть проблема

E/AndroidRuntime(  709): java.lang.IllegalArgumentException: width and height must be > 0
E/AndroidRuntime(  709):    at android.graphics.Bitmap.createBitmap(Bitmap.java:603)
E/AndroidRuntime(  709):    at android.graphics.Bitmap.createBitmap(Bitmap.java:585)
[...]

Это объявление моего виджета:

<?xml version="1.0" encoding="utf-8"?>
<appwidget-provider
  xmlns:android="http://schemas.android.com/apk/res/android">
   android:updatePeriodMillis="7200000" 
    android:initialLayout="@layout/widget"
    android:minHeight="72dp" android:minWidth="90dp"> 
</appwidget-provider>

Что-то не так с minHeight и minWidth?

Ответы [ 2 ]

0 голосов
/ 14 марта 2013

Еще один способ вызвать ту же ошибку - установить android:previewImage для безразмерной фигуры, которую можно нарисовать в файле my_widget_info.xml, а не для png.

Решается установкой android:previewImage для рисования с помощьюразмеры, например, любые .png.

Сначала я подумал, что было бы разумно использовать фоновую фигуру для рисования в качестве предварительного изображения-заполнителя при работе с моим виджетом, поэтому я получил эту ошибку.

0 голосов
/ 02 декабря 2011

На всякий случай, если кто-то совершил ту же ошибку: это произошло из-за синтаксической ошибки (см. Комментарии выше), которую компилятор не распознал.

...