1、向下一个活动传递参数
通过putExtra()方法的重载,把传递的参数暂存在Intent中,启动另一个活动后,只需将参数从Intent中取出
//传递参数
Intent intent = new Intent(MainActivity.this,FirstActivity.class);
intent.putExtra("key","value");
startActivityForResult(intent, 1);
//接收参数
Intent intent = getIntent();
String data = intent.getStringExtra("key");
2、活动销毁时候向上一个活动传递参数
使用 startActivityForResult 开启的活动,希望在开启的活动销毁的时候能够返回一个结果给上一个活动
第一个参数 intent
第二个参数 1 用于在回调的时候判断数据来源
Intent intent = new Intent(MainActivity.this, FirstActivity.class);
startActivityForResult(intent, 1);
当FirstActivity活动销毁时候,会回调上一个活动的onActivityResult()方法,此时就可获取活动 销毁返回的参数
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
switch (requestCode) {
case 1:
if (resultCode == RESULT_OK) {
String datas = data.getStringExtra("key");
}
}
}
通过点击button键销毁的活动
button2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v)
{
//活动销毁时候返回参数给上一个活动
Intent intent = new Intent();
intent.putExtra("key","value");
setResult(RESULT_OK, intent);
finish();
}
});
通过点击back实体键销毁的活动:重写onBackPressed()方法
@Override
public void onBackPressed()
{
//活动销毁时候返回参数给上一个活动
Intent intent = new Intent();
intent.putExtra("key","value");
setResult(RESULT_OK, intent);
finish();
}