我有一个带有相关PreferenceActivity / PreferenceScreen的小部件。我想在用户完成首选项设置时更新我的小部件。
我在我的PreferenceActivity中使用onBackPressed,正在调用它,但是没有调用widget的onUpdate。有人可以对此有所了解吗?
public void onBackPressed() {
if (CONFIGURE_ACTION.equals(getIntent().getAction())) {
Intent intent=getIntent();
intent.setAction(AppWidgetManager.ACTION_APPWIDGET_UPDATE);
Bundle extras=intent.getExtras();
if (extras!=null) {
int id=extras.getInt(AppWidgetManager.EXTRA_APPWIDGET_ID, AppWidgetManager.INVALID_APPWIDGET_ID);
AppWidgetManager mgr=AppWidgetManager.getInstance(this);
RemoteViews views=new RemoteViews(getPackageName(), R.layout.widget);
mgr.updateAppWidget(id, views);
Intent result=new Intent();
result.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, id);
setResult(RESULT_OK, result);
sendBroadcast(new Intent(this, WidgetProvider.class));
}
}
super.onBackPressed();
}