一、带参数的不同Activity之间的数据传递
第一个Activity:
/*new一个Intent对象,并指定class*/
Intent intent = new Intent();
intent.setClass(EX03_10.this,EX03_10_1.class);
/*new一个Bundle对象,并将要传递的数据传入*/
Bundle bundle = new Bundle();
bundle.putDouble("height",height);
bundle.putString("sex",sex);
/*将Bundle对象assign给Intent*/
intent.putExtras(bundle);
/*调用Activity EX03_10_1*/
startActivity(intent);
第二个Activity:
/* 取得Intent中的Bundle对象 */
Bundle bunde = this.getIntent().getExtras();
/* 取得Bundle对象中的数据 */
String sex = bunde.getString("sex");
double height = bunde.getDouble("height");
二、返回数据到前一个Activity
第一个Activity:
Intent intent = new Intent();
intent.setClass(EX03_11.this, EX03_11_1.class);
startActivityForResult(intent, 0);
/* 重写 onActivityResult() */
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
switch (resultCode) {
case RESULT_OK:
break;
default:
break;
}
}
第二个Activity:
Intent intent = this.getIntent();
EX03_11_1.this.setResult(RESULT_OK, intent); /* 关闭activity */
EX03_11_1.this.finish();