2010-06-17 95 views
2

我正在创建小部件,并且希望能够让用户在配置活动期间在菜单中选择小部件的大小。我的问题是,在appwidget-provider元数据xml中,块大小已经在配置活动输入之前设置。我需要能够重置包含块大小(minHeight,minWidth)的小部件信息,而无需添加不同大小的单独小部件。有任何想法吗?如何从小部件菜单中选择小部件后调整其大小

回答

4

你不能这样做。这是一个Android限制。创建几个不同大小的小部件,将它们命名为“YourWidget(small)”,“YourWidget(large)”等。或者“YourWidget 1x1”和“YourWidget 2x1”。您需要几个几乎完全相同的appwidget-provider xml ...

由于您还需要几乎相同的提供程序和配置类,因此需要在其中定义一个具有所需代码的基类,然后从它们继承,像这样:

公共类WidgetProvider2x1延伸WidgetProvider { @覆盖 INT getWidgetStyle(){ 返回WidgetProvider.WIDGET_STYLE_2x1; }}

当您需要知道您的小部件的大小时,请在基类中调用getWidgetStyle()。

相关问题