Android 我的自定义偏好消失后如何清理
我的应用程序中有一个自定义的,它使用一个(当滑块位置改变时,它是一个音量控制滑块,可以播放一个样本) 当我的首选项停止显示时,我想在声音池上调用Android 我的自定义偏好消失后如何清理,android,android-activity,preference,Android,Android Activity,Preference,我的应用程序中有一个自定义的,它使用一个(当滑块位置改变时,它是一个音量控制滑块,可以播放一个样本) 当我的首选项停止显示时,我想在声音池上调用unload(),以便在我之后进行清理。有一个好地方可以这样做吗?在活动中我会把它放在ondestory()中 我猜测了一下onPrepareForRemoval(),但似乎没有调用它。最后,我找不到一个可靠的位置来清除首选项中的资源。我所采取的方法是使用一个定制的PreferenceActivity,并在其中为其子首选项管理SoundPool资源。因此
unload()
,以便在我之后进行清理。有一个好地方可以这样做吗?在活动中
我会把它放在ondestory()
中
我猜测了一下
onPrepareForRemoval()
,但似乎没有调用它。最后,我找不到一个可靠的位置来清除首选项中的资源。我所采取的方法是使用一个定制的PreferenceActivity,并在其中为其子首选项管理SoundPool资源。因此,在PreferenceActivity的onCreate()中创建声音池,并在onDestroy()中关闭它,就像在任何活动中使用声音池一样
(我的孩子偏好通过简单地将他们的上下文对象强制转换到我的自定义首选项活动并使用getter来获取声音池。我知道这样手动强制转换上下文有点不舒服,但我看不出有什么地方这个自定义偏好的上下文不是我的自定义首选项活动……)