FirstActivity——>SecondActivity
在FirstActivity中:
Intent intent = new Intent(this, SecondActivity.class);
startActivityForResult(intent, 0); //请求码
在SecondActivity中:
Intent intent= new Intent();
intent.putExtra("text", text);//要传递的数据
setResult(0, intent);//结果码
finish();
回到FirstActivity:
//requestCode:请求码
//resultCode:结果码 可以与上面的请求码和结果码做判断处理
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// 在第二个界面关闭的时候调用,返回数据放在data里面
if (data != null) {
String text = data.getStringExtra("text");
//text为返回携带的数据
}
super.onActivityResult(requestCode, resultCode, data);
}
Intent Intent = new Intent(mContext,SecondActivity.class);
startActivityForResult(Intent, FinalConstants.TEST_REQUEST);
Intent it = new Intent();
it.putExtra("test",str);
setResult(Activity.RESULT_OK, it);
finish();
/** 回传处理 */
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
// 判断是否请求成功
boolean isResultOk = (Activity.RESULT_OK == resultCode);
// 获取请求code
switch(requestCode){
case FinalConstants.TEST_REQUEST:
if(isResultOk){ //判断了请求码和结果码 也可只对其中之一做判断
String str = data.getStringExtra("test");
//TODO
}
break;
}
}