使用场景:
页面跳转,A页面跳转到B页面,在B页面中处理相关数据并将结果返回给A。
最常见的一个例子就是登陆或者注册,登陆注册页面处理数据,将登陆或注册的成功信息返回给调用者的页面(A页面)。
A页面:
有两个地方需要跳转:
Intent intent = new Intent(A.this,B.class);
/**
requestcode是要跳转到的页面的code,在onActivityResult用来标识是哪个页面返回的数据。
*/
startActivityForResult(intent, B_REQUEST_CODE);
Intent intent = new Intent(A.this,C.class);
startActivityForResult(intent, C_REQUEST_CODE);
重写下面的函数:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == RESULT_OK) {
switch (requestCode)
case B_REQUEST_CODE:
data.getdata();
break;
case C_REQUEST_CODE:
break;
}
}
B页面中的代码:
一般resultcode就用RESULT_OK就可以了。将data返回给调用者页面.
setResult(RESULT_OK, data);
finish();