Android startActivityForResult用法

Activity之间的跳转一般使用startactivity(intent)

1、如果A--B,需要B返回一个数据给A,那么就可以使用startactivityforresult(intent,requestCode),请求码的值随便设置,但必须>=0。而当返回A的时候,就在A的

protectedvoidonActivityResult(int requestCode,int resultCode, Intent data) {  } 这个方法中回调。

requestCode为你跳转时设置的,resultCode为B返回的时候设置的。

2、如果A也想给B传递数据,那么就需要intent.putexstra();

A中

Intent intent = new Intent(A.this,B.class);

intent.putExstra();//如果需要传递数据的话,传递的有各种类型,使用相应的方法

startactivityforresult(intent,resquestcode);

B中

//如果A传递数据的话

Intent intent = getIntent();

Bundle bundle = intent.getExtras();

bundle.getString();//这里要看你传递的数据类型

当返回A的时候

Intent mIntent =newIntent();

mIntent.putExtra("change01","1000");

mIntent.putExtra("change02","2000");

// 设置结果,并进行传送

this.setResult(resultCode, mIntent);

finish();

你可能感兴趣的:(Android startActivityForResult用法)