Android 3.1中可调整大小的appwidgets



我很高兴看到Android 3.1对可调整大小的应用程序小部件的支持,但我对如何使它们真正工作感到困惑。

我不是appwidget新手,添加没有问题

android:resizeMode="horizontal|vertical"

到我的appwidget定义XML。就目前而言,这是可行的,小部件名义上是可调整大小的(长按它,就会出现把手,让我可以将边框拖动到不同的大小)。

不过有两个问题:

首先,当调整小部件的大小时,我的代码似乎不会被调用。在我的onReceive()处理程序中设置的断点永远不会被命中。

其次,假设我可以进入我的代码,我在文档中看不到任何地方来获得小部件的当前大小。我已经使用了对AppWidgetProviderInfo.minWidth.minHeight的调用,但它们只反映了XML中给定的最小维度,在运行时不会更改。

那么,如何真正实现可调整大小的小部件呢?

我很确定没有办法获得低于API 16的小部件大小,并且当小部件的大小调整到低于API 16时,没有意向广播。

从API 16添加了onAppWidgetOptionsChanged(),当您的小部件调整大小时会调用它,您可以从传递给它的捆绑包中检索小部件的大小。

相关内容

  • 没有找到相关文章

最新更新