当我点击Button wid时,为什么不接收被叫?
代码:
public class Widget extends AppWidgetProvider {
public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) {
for (int i = 0; i < appWidgetIds.length; i++) {
int appWidgetId = appWidgetIds[i];
Intent intent = new Intent(context, Widget.class);
PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, intent, 0);
RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.widget);
views.setOnClickPendingIntent(R.id.wid, pendingIntent);
appWidgetManager.updateAppWidget(appWidgetId, views);
}
}
@Override
public void onReceive(Context context, Intent intent) {
super.onReceive(context, intent);
Log.d("ARH","CLICKK");
}
因为我需要一个按钮来手动刷新小部件,但似乎Log.d("ARH","CLICKK");
只在我添加小部件时被调用。
谢谢!
答案 0 :(得分:3)
您使用PendingIntent调用Activity,但您的Widget类不是活动。
如果要更新到窗口小部件,则需要使用发送APPWIDGET_UPDATE操作的getBroadcast。