我有一个 WidgetProvider 和一个配置活动
当小部件启动时,它从配置活动开始,我通过对 widgetprovider 进行自定义调用来设置它
(您会注意到来自 sdk 教程示例)
// Push widget update to surface with newly set prefix
AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(context);
AwarenessWidget.updateAppWidget(context, appWidgetManager,
mAppWidgetId, position);
// Make sure we pass back the original appWidgetId
Intent resultValue = new Intent();
resultValue.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, mAppWidgetId);
setResult(RESULT_OK, resultValue);
finish();
我将小部件 ID 传递给函数....在小部件内我创建了一个如下所示的 Intent:
Intent configIntent = new Intent(context, Configure.class);
configIntent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, appWidgetId);
PendingIntent pendingIntent = PendingIntent.getActivity
(context, 0, configIntent,
PendingIntent.FLAG_UPDATE_CURRENT);
views.setOnClickPendingIntent(R.id.MainImage,pendingIntent);
views.setImageViewResource(R.id.MainImage, lv_images[version]);
appWidgetManager.updateAppWidget(appWidgetId, views);
我总是引用小部件 ID,甚至将其添加为意图的额外内容
但是当我在主屏幕上看到其中两个小部件时,小部件 ID 始终引用最后放置的小部件 ID