【发布时间】:2013-09-06 02:19:15
【问题描述】:
我成功编写了一个小部件,它按我想要的方式工作。我只是想在用户单击小部件时做一些事情,我正在更新小部件内的图像。
当我单击小部件时,我的代码运行并且一切正常!但是,在单击我的小部件几秒钟后,android.appwidget.action.APPWIDGET_UPDATE 广播开始运行。
我正在使用onReceive() 来做我所有的事情。这是我的未决意图:
Intent intent = new Intent(context, Widget.class);
intent.setAction("CLICKED_WIDGET");
PendingIntent pIntent = PendingIntent.getBroadcast(context, 0, intent, 0);
我使用自定义广播字符串来表示我正在单击小部件。这完美地工作。然而,几秒钟后,android.appwidget.action.APPWIDGET_UPDATE 也被广播了。如果我对这个广播不做任何事情,我的小部件是空的。所以现在我所做的只是在每次发送更新广播时重新更新小部件(这很烦人)。
我要问的是,我如何才能阻止发送更新广播,并且仅在用户单击小部件时才更新我的小部件,而不是任何其他时间。
谢谢!
【问题讨论】: