1

我有一个通过活动配置的小部件(我不想通过 apreference activity进行配置),并且希望每次添加小部件时都打开配置活动。

一旦用户配置了小部件,数据就会保存在 XML 中。

我看到onEnable()这只在第一次添加小部件时才有效,我的问题是:每次添加小部件时是否有任何其他函数被调用?

我已经考虑将 widgetId 添加到 XML 中,并在每次onUpdate()调用时检查是否有一个新的 widgetId 不在 XML 文件中,但我想这很混乱。

有人可以在这里给我一些提示吗?

4

1 回答 1

0

当用户添加您的小部件的新实例时,您的 AppWidgetProvider 的方法将被调用。您可以尝试在调用时启动 Activity onUpdate编辑: 要检测用户添加您的小部件的新实例,您将在调用和方法时保存(这是您的小部件实例的唯一 ID 数组) (可能您必须将其保存在 App 首选项或文件中或... )。然后当 onUpdate 或 onReceive 再次调用时,检查或否?如果是真的,你可以确定用户添加了新实例,如果两者相等,你的一个小部件正常更新,如果最新长度小于最新长度,您可以确保用户删除了您的小部件实例。在最后保存onReceive

int[] appWidgetIdsonUpdateonReceivelength of newest appWidgetIds is greater than length of latest appWidgetIdsonUpdateonReceiveappWidgetIds再等等。

于 2012-07-30T08:13:19.093 回答