我有一个小部件,可以在点击时打开设置活动。现在,如果用户添加了小部件的多个实例并单击它们,它们都会打开具有相同数据和相同SharedPreferences
的相同活动。 / p>
在onReceive()
我有
views.setOnClickPendingIntent(R.id.mytv, pendingIntent);
appWidgetManager.updateAppWidget(thisAppWidget, views);
我想要的是将Activity设置作为具有独立SharedPreferences
的单独实例打开...
有办法吗?
答案 0 :(得分:1)
您可以使用该活动,只需在打开时将appwidget ID传递给该活动即可。 使用appwidget id为每个窗口小部件实例创建单独的共享首选项文件,或者只使用单个共享pref文件,但是在需要不同设置的窗口小部件时,只需创建一些密钥并附加该密钥的窗口小部件ID,例如“sort_order _”+ appWidgetId。当屏幕小部件从屏幕上移除时,不要忘记删除首选项文件或属于该appwidget的键。