我会让它变得简单。我有我的小部件代码。我的小部件布局包含一个带有一个按钮的线性布局。在我的小部件代码中,我初始化了一个包含一些值的字符串列表。当我单击小部件中的按钮时,我必须使用更多值更新我的列表。
所以,这是我的代码,
List<String> myList = null;
public void onUpdate(Context context, AppWidgetManager appWidgetManager,
int[] appWidgetIds) {
myList = new List<String>();
myList.add("1");
myList.add("2");
...
Intent intent = new Intent(context, getClass());
intent.setAction("CALL_UPDATE");
PendingIntent pendingIntent = PendingIntent.getBroadcast(context, 0, intent, 0);
views.setOnClickPendingIntent(R.id.button, pendingIntent);
....
}
@Override
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals("CALL_UPDATE")) {
Toast.makeText(context, "Intent received"+myList , 2000).show();
}
}
单击按钮时,onReceive() 会正确接收广播。问题是,在 onReceive() 上,我看到我的列表为 null 而不是其中的一些值,因为之前添加了一些字符串对象。
任何人都可以帮忙吗?
谢谢!拉胡尔。