之前在写一个AppWidget,需要根据按键显示不同的内容,其中我需要记录一个位置,一开始我用了一个int型数据保存位置,后来发现每次运行 appWidgetManager.updateAppWidget(componentName, remoteviews); 之后,貌似继承自AppWidgetProvider的该类的所有数据成员都会重新初始化。所以后来改用Preference来保存数据。
preferences = context.getSharedPreferences("kebiaoDay", context.MODE_PRIVATE);
editor = preferences.edit();
System.out.println("RECEVIE");
currentDay = preferences.getInt("current", 0);
之后一切就安好了--#
本文介绍了一种在Android AppWidget中实现数据持久化的方案。作者最初尝试使用成员变量存储状态信息,但发现在调用updateAppWidget方法后,所有数据会被重置。最终通过SharedPreferences保存数据解决了这一问题。
5530

被折叠的 条评论
为什么被折叠?



