2015-06-13 32 views
0

我需要添加背景音乐到我的android应用程序。我已经将MediaPlayer对象声明为类变量,并在oncreate()中创建它。我也在oncreate()中启动了MediPlayer对象。我已经停止了媒体播放器的按钮点击方法,开始一个新的意图。我的要求是在开始布局时播放音乐,并在开始下一个布局时停止播放,但现在它不止一次启动并且不会停止。这是我的代码。为什么媒体播放器不止一次启动,媒体播放器不会停止在创建时启动的按钮点击?

MediaPlayer startMusic; 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_cover); 
     setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); 
     startMusic= MediaPlayer.create(Cover.this, R.raw.startgame); 

     if(!(startMusic.isPlaying())) 
     { 
      startMusic.start(); 
     } 
    } 


public void btnStartClick(View v) 
    { 
     startMusic.pause(); 
     Intent intent = new Intent(this,ScaleExercise.class); 
     startActivity(intent); 
    } 

有人可以告诉我什么错误在这里(尽快)。 三江源

回答

0

试试这个

static MediaPlayer startMusic; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_cover); 
    setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); 
    startMusic= MediaPlayer.create(Cover.this, R.raw.startgame); 


} 


@Override 
protected void onStart() { 
    // TODO Auto-generated method stub 

    if(!(startMusic.isPlaying())) 
    { 
     startMusic.setLooping(true); 
     startMusic.start(); 
    } 

    super.onStart(); 

} 

@Override 
protected void onStop() { 
    // TODO Auto-generated method stub 
    startMusic.stop(); 
    super.onStop(); 

} 
public void btnStartClick(View v) 
{ 

    Intent intent = new Intent(this,ScaleExercise.class); 
    startActivity(intent); 
} 
+0

感谢。我改变它如上,现在我可以听到背景音乐只播放一次,但有这个错误显示在设备的屏幕上,因为“不幸的应用已经弯腰”,并在logcat作为 E/AndroidRuntime:致命的例外:主要 机器人.app.SuperNotCalledException:Activity {com.example.kushi.exercisegame2/com.example.kushi.exercisegame2.Cover}没有通过调用super.onStart() at android.app.Activity.performStart(Activity.java:5338 ) – user3406362

+0

哦,忘记调用super.onstart(),我编辑了代码,并连续播放音乐,您只需要将播放器的循环方法设置为true – Kaijju

+0

谢谢sooooooo muchh .. :)现在完美运行。 – user3406362