首先
1级页面
startActivityForResult(intent,requestCode)
2级页面
setResult(RESULT_OK,intent)
确保上述跳转和返回的两个事件没有问题
其次
在app目录下的AndroidManifest.xml中检查调用startActivityForResult的Activity是不是定义了singleTask或singleInstance的启动模式:
<activity
android:name=".FirstActivity"
android:label="this is first activity"
android:launchMode="singleInstance">
...
</activity>
这种情况将启动模式改为standard或singleTop。
最后
如果上述情况都没有问题,恰好你又是在监听二级页面的返回事件(onBackPressed())中添加的返回参数
把super.onBackPressed();方法放在代码块最后,所有监听逻辑跑完了再执行super.onBackPressed(),或者直接把super.onBackPressed()替换为finish()放在最后,销毁活动。
如果都不行的话,那我也不知道...