我正在AppWidget的按钮上启动一个活动。用户输入活动的一些数据,当用户关闭活动时,我想更新在AppWidget上的TextView中输入的数据用户。知道怎么做吗? 我已成功从AppWidget启动活动,只有更新AppWidget的问题。
答案 0 :(得分:4)
您可以使用RemoteViews
和AppWidgetManager
:
AppWidgetManager manager = AppWidgetManager.getInstance(context);
RemoteViews remoteViews = new RemoteViews(
context.getPackageName(), R.layout.widget);
remoteViews.setTextViewText(R.id.textBoxId, "new textbox content");
manager.updateAppWidget(appWidgetId, remoteViews);
答案 1 :(得分:0)
您可以从主机应用程序活动或片段中调用appwidget更新方法。
这是我的方法:
int[] ids = AppWidgetManager.getInstance(getApplication()).
getAppWidgetIds(new ComponentName(getApplication(), MyWidget.class));
MyWidget myWidget = new MyWidget();
myWidget.onUpdate(this, AppWidgetManager.getInstance(this),ids);