我正在开发的 LiveWallpaper 应用程序(我的第一个)有问题。考虑 2 个类:LiveWallpaperService
和LiveWallpaperSettings
.
LiveWallpaperSettings
延伸PreferencyActivity
。表示用户选择的偏好的示例数据,例如 a boolean displaySprite
(true=> 在屏幕上显示精灵,false 不显示) 通过SharedPreferences
in保存/持久化LiveWallpaperSettings
。
在启动应用程序时(设置 -> 显示 -> LiveWallpaper -> MyLiveWallpaper),需要知道保存的首选项,以便可以显示或不显示精灵。但是,LiveWallpaperSettings
在单击“设置”按钮之前不会实例化,因此SharedPreferences
不可用,因此在此之前保存的设置不可用。
我试过这个LiveWallpaperService.onCreateScene()
,但里面没有数据:
SharedPreferences startupPrefs = PreferenceManager.getDefaultSharedPreferences(getBaseContext());
我能做些什么?