两个Activity之间想要传递参数,并且获得返回值,就要用到startactivityforresult(intent,requecode)这个方法了
Intent intent = new Intent(StartGameActivity.this,GameSettingActivity.class);
startActivityForResult(intent,REQUESTCODE);
break;然后重写 onActivityResult方法
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == REQUESTCODE &&resultCode == RESULTCODE){
if(data!=null){
bgMusic = data.getStringExtra("bgMusic");
sound = data.getStringExtra("sound");
planetype = data.getStringExtra("planetype");
Toast.makeText(StartGameActivity.this,"音乐是:"+bgMusic+",音效是:"+sound+",机型是:"+planetype,Toast.LENGTH_SHORT).show();
}在另一个Activity中则需要获得intent 并且 将返回值放入intent中 public void onClick(View view) {
Intent intent = getIntent();
intent.putExtra("bgMusic",bgmusic);
intent.putExtra("sound",sound);
intent.putExtra("planetype",planetype);
setResult(StartGameActivity.RESULTCODE,intent);
finish();
}