我有一个首选屏幕,我可以更改一些设置。 在代码中,我可以通过共享首选项编辑它们而不会出现问题。
我有两个问题: - 当手机重启时,这些设置会保存在某个地方吗? - 我可以将其他设置插入到sharedprefs中。我指的是未在首选项屏幕中声明的设置。
答案 0 :(得分:1)
手机重启时,这些设置会保存在某个地方吗?
是的,它们会保存在设备上的xml文件中。
我可以将其他设置插入到sharedprefs中吗?
是的,您可以在sharedprefs中进行大量设置,唯一通过PreferenceActivity显示或修改的设置是您在布局文件中设置的设置,其键将是布局文件中指定的键。
答案 1 :(得分:0)
如前所述, SharedPreferences持久化(写入xml文件),因此即使重新启动它们也始终可用(只要在属于SharedPreference的编辑器上调用commit()) )。
至于将其他设置插入到sharedprefs中,
如果你想要更有条理,你实际上可以有多个SharedPreferences(在不同的文件中),但你绝对可以保存你想要的任何东西。
获取活动上下文的默认共享首选项:
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
要获取您创建的许多SharedPreference之一,请使用:
SharedPreferences prefs = context.getSharedPreferences(String name, int mode)
name是文件的名称 模式为MODE_PRIVATE,MODE_WORLD_READABLE,MODE_WORLD_WRITEABLE,MODE_MULTI_PROCESS,具体取决于您希望其他应用程序如何访问您的应用程序首选项,这可能很有用