0

每当按下主页按钮和调用 setContentView 时,都会调用 onStop 方法和 onPause 方法。我希望能够区分两者,当按下主页按钮时,声音停止,当设置新视图时,声音继续。我是java的菜鸟,但是我搜索了很长时间,找不到解决方案。

@Override
protected void onResume() {
    super.onResume();
    if (btnSound.isChecked()){
        snd.start();
    }
}

@Override
protected void onStop() {
    super.onStop();
    snd.pause();
}
4

1 回答 1

0

好吧,要回答您的问题, onResume() 和 onStop() 调用之间的调用时间可能太窄了,以至于您无法区分。如果可以的话,你可以试试这个:

@Override
protected void onPause() {
    super.onPause();

    snd.start(); // Sound start

     // SLEEP 2 SECONDS HERE ...
    Handler handler = new Handler(); 
    handler.postDelayed(new Runnable() { 
         public void run() { 
             snd.pause();
         } 
    }, 2000); 
}
于 2013-10-25T04:11:39.960 回答