顺序必须如此
Intent resultIntent = new Intent();
resultIntent.putExtra("status", "login_success");
activity.setResult(RESULT_OK, resultIntent);
Log.e(TAG, "login: ========status"+isFromWeb );
activity.finish();
不可以先调用finish()
首先启动时必须用startActivityForResult
如:
然后就是请求的activity在AndroidManifest.xml中必须不能这样设置android:launchMode="singleTask"
然后就是设置返回参数问题,必须设置setResult
Intent intent=new Intent();
intent.putExtra("newPwd", newPwd.getText().toString());
ChangePwdActivity.this.setResult(2000, intent);
ChangePwdActivity.this.finish();
在最开始的activity中获取数据;例如:
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// TODO Auto-generated method stub
Log.d("TAG", "onActivityResult.."+requestCode+"\t"+resultCode);
if(resultCode==2000){
//关注界面选择的信息返回到注册界面,将数据放入注册对象中
Log.d("TAG","newPwd"+ data.getExtras().getString("newPwd"));
}
}