最近在做一个小项目,遇到了ActivityGroup中有两个Activity,Activity1中用到了startActivityForResult();跳到了Activity3,Activity3用到了setResult().在Activity1中重写了onActivityResult方法,但并没有执行该方法。后来google了一下,找到了解决办法。
1,在Activity1的startActivityForResult()时,要用到getParent().startActivityForResult()
2,在ActivityGroup中实现onActivityResult
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
// 向下传递
Activity1 currentActivity = (Activity1) getLocalActivityManager().getCurrentActivity();
currentActivity.onActivityResult(requestCode, resultCode, data);
}
3,在Activity1中创建一个onActivityResult(requestCode, resultCode, data)方法,实现你想操作的功能。