我是 Android 新手,我在配置 Activity 的帮助下更新了 Widget 上的 TextView。它工作正常。需要更新相同的文本视图以刷新按钮单击。为此,我通过 Intent 传递小部件 ID,但在接收方无法接收小部件 ID,因此无法更新文本视图。
在 Widget_Provider 中设置 Intent
Intent refreshIntent = new Intent(context, refreshWidgetActivity.class);
refreshIntent.setAction(ACTION_WIDGET_REFRESH);
PendingIntent refreshPendingIntent = PendingIntent.getActivity(context, 0,
refreshIntent, 0);
remoteViews.setOnClickPendingIntent(R.id.button3, refreshPendingIntent);
refreshIntent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID,appWidgetIds[0]);
在收到活动结束时,
Intent intent = getIntent();
Bundle extras = intent.getExtras();
if (extras != null) {
mAppWidgetId = extras.getInt(
AppWidgetManager.EXTRA_APPWIDGET_ID,
AppWidgetManager.INVALID_APPWIDGET_ID);
}
if (mAppWidgetId == AppWidgetManager.INVALID_APPWIDGET_ID) {
finish();
}
这里 0 在 extras 而不是 Widget ID 中找到,请帮助。