【发布时间】:2012-07-08 08:23:28
【问题描述】:
我有一个 AppWidget 与两个 Activities 交互。首先Activity 要求用户输入一些文本。这是从AppWidget 开始这个Activity 的代码:
Intent promptIntent = new Intent(context,
TransparentPromptActivity.class);
promptIntent.putExtra("appwidget_id", appWidgetId);
promptIntent.putExtra("message", incomingMessage);
PendingIntent promptPendingIntent = PendingIntent.getActivity(
context, 0, promptIntent, 0);
views.setOnClickPendingIntent(R.id.app_widget_tv,
promptPendingIntent);
这个Activity 将输入的消息发送回显示它的AppWidget。然后有一个Activity 分享消息,这里是启动这个Activity 的代码:
Intent shareIntent = new Intent(context, MainActivity.class);
shareIntent.putExtra("message", incomingMessage);
PendingIntent sharePendingIntent = PendingIntent.getActivity(
context, 0, shareIntent, 0);
views.setOnClickPendingIntent(R.id.app_widget_btn_share,
sharePendingIntent);
如您所见,消息存储在本地incomingMessage 变量中。但是,当第二个Activity启动时,incomingMessage为空,表示变量值变化时Intent的内容不会更新。怎样才能达到这种效果?提前致谢。
【问题讨论】:
标签: android android-intent android-appwidget android-pendingintent