0

所以,我已经为我的应用程序声明了一个小部件,并想在冰淇淋三明治模拟器上尝试它,但是当我选择它时,它会使启动器崩溃。

问题是,启动器认为宽度和高度将等于 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吗?

4

2 回答 2

0

以防万一有人犯了同样的错误:这是由于编译器无法识别的语法错误(参见上面的注释)。

于 2011-12-02T14:41:13.100 回答
0

触发相同错误的另一种方法是android:previewImage在文件中设置为可绘制的无量纲形状,my_widget_info.xml而不是设置为 png。

通过设置android:previewImage为具有尺寸的可绘制对象来解决,例如任何 .png。

起初我认为在处理我的小部件时使用可绘制的背景形状作为占位符预览图像会很聪明,这就是我收到此错误的原因。

于 2013-03-14T13:03:48.483 回答