我有一个正在播放音乐的服务。我已经实现了这样的淡出 :
@Override
public void onDestroy(){
volume=1.0f;
fade_handler.post(fade_out);
super.onDestroy();
}
这是fade_out Runnable:
private Runnable fade_out = new Runnable(){
public void run(){
player.setVolume(volume, volume);
if(volume>0.0f){
volume-=0.05f;
fade_handler.postDelayed(fade_out, 200);
}
else{
player.stop();
player.release();
stopForeground(true);
//here should be super.onDestroy()!!!!!!!
}
}
};
问题是现在super.onDestroy()在fade_out完成之前被调用- 所以我想在这个可运行对象中调用 super.onDestroy() -但是如何?