背景音乐只在第一次活动中

时间:2014-05-07 20:37:01

标签: android eclipse

我只想在我的第一个活动(MainActivity)中播放背景音乐。当我在单击按钮后切换到下一个活动时,我希望音乐停止。以下代码是否足够,或者我是否也必须实现该按钮?

    @Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    mp = MediaPlayer.create(MainActivity.this, R.raw.music);
    mp.setLooping(true);
    mp.start();

2 个答案:

答案 0 :(得分:1)

您需要确保在其他活动启动时停止播放音乐。如果您希望它在返回此活动时再次启动,则需要对其进行编码,可能需要使用startActivityForResult并在结果上激活它。即使他们点击主页按钮并隐藏活动,您是否希望它播放?如果没有,最简单的方法是在onResume中启动它并将其暂停在onPause中。

答案 1 :(得分:1)

在您的第一个onPause()中添加activity方法,暂停/停止音乐:)

@Override
 public void onPause() {
   if(mp.isPlaying()){  
      mp.pause();
      //mp.stop();
   }
  super.onPause(); 
}

甚至您可以使用onResume()方法重新开始播放音乐。

@Override
protected void onResume() {
    mp.start();
    super.onResume();
}