我的Android游戏的主菜单有四个按钮。我可以选择打开和关闭。当用户单击打开按钮时,当我开始单击播放时,音乐应该会播放。如果用户单击关闭,则音乐将不会播放。但默认设置为播放音乐。
我尝试自己编写代码,如果用户单击on
按钮,则此sign
变量将设置为1,并且此值将传递给play Activity 。如果符号值等于1,则音乐开始播放;否则,音乐开始播放。如果为0,则音乐不会播放。但是,执行完此操作后,单击确定后,结果将显示为游戏的“FORCE CLOSE
”。
我的“期权” Activity 有以下代码:
musicOn.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Intent put = new Intent(getApplicationContext(), Level1.class);
musicSwitch = 1;
Bundle cargo = new Bundle();
cargo.putInt("sign", musicSwitch);
put.putExtras(cargo);
}
});
musicOff.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent put = new Intent(getApplicationContext(), Level1.class);
musicSwitch = 0;
Bundle cargo = new Bundle();
cargo.putInt("sign", musicSwitch);
put.putExtras(cargo);
}
});
这是我的level1 Activity :
int value=1;
Bundle cargo = getIntent().getExtras();
value = cargo.getInt("sign");
if(value==1){
MediaPlayer mPlayer = MediaPlayer.create(Level1.this, R.raw.sounds);
mPlayer.start();
mPlayer.setLooping(true);
}
最佳答案
请发布日志以更准确。
我认为这是强制关闭的,因为当值等于0时您没有告诉它该怎么做。
if(value==1){
MediaPlayer mPlayer = MediaPlayer.create(Level1.this, R.raw.sounds);
mPlayer.start();
mPlayer.setLooping(true);
} else if(value == 0){
mPlayer.stop();
}
并且我建议您不要仅在if语句中将mPlayer设为静态。
关于java - Android中的开/关音乐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18316060/