在做界面传参跳转的时候AActivity,BActivity
AActivity可以正常的传递参数到BActivity,但是BActivity返回的时候不能执行AActivity中的 onActivityResult方法。
最开始以为是参数和code给错了,可是检查之后发现没有错误,而且调试之后发现AActivity在执行startActivityForResult 马上就执行了onActivityResult。
百度之后发现 原因是AActivity在AndroidManifest.xml 中设置的launchmode="SingleTask";后修改为 android:launchMode="standard"即可!
AActivity
//调用联系人
public void getContact(){
Intent intent = new Intent();
intent.putExtra("send", "GETCONTACT");
intent.setClass(SendCoinsActivity.this,ContactPerson.class);
startActivityForResult(intent, GETCONTACT);
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent intent) {
if(resultCode==GETCONTACT){
String str = intent.getExtras().getString("address");
updateSendCoinsFragment(str,null);
}else{
super.onActivityResult(requestCode, resultCode, intent);
}
}
1
android:label="@string/app_name"
BActivity
Intent data=new Intent();
data.putExtra("address", address);
setResult(SendCoinsActivity.GETCONTACT, data);
finish();