我按照本教程将浮动小部件添加到了我的android应用程序中-
https://www.android-examples.com/floating-widget/
小部件出现在android显示屏的中间。它运作良好。我可以将其拖放到整个屏幕上。
有时我需要禁用浮动窗口小部件。然后,当我再次启用该小部件时,它再次出现在屏幕中间,而不是我上次保存的位置。
现在,我需要一个可以存储上一次位置数据的解决方案,当我再次启用它时,该数据将显示在其中。
请有人帮忙。
答案 0 :(得分:1)
您可以使用SharedPreferences
来实现此行为。 Documentation
因此,如果您能够获取小部件坐标,则可以将其置于共享的首选项中,并且在下一次初始化时,它将检查它们是否包含使用特殊键放置的最后一个参数。您可以按照示例here所示进行操作。
因此要将坐标放入“共享首选项”中,您需要:
SharedPreferences sharedPref =
getActivity().getPreferences(Context.MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPref.edit();
editor.putInt("key for position", *value*);
editor.putInt("key for position", *value*);
editor.commit();
要在需要重新启动窗口小部件时获取它们,您只需:
SharedPreferences sharedPref = getActivity().getPreferences(Context.MODE_PRIVATE);
int coordinate = sharedPref.getInt("key for position", *defaultValue*);
int coordinate = sharedPref.getInt("key for position", *defaultValue*);