我在FirstActivity上调用SecondActivity。请看下面:
Intent intent = new Intent(this, SecondActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
activity.startActivityForResult(intent, 1);
在我的SecondActivity中,完成其特定的屏幕,并将结果设置为RESULT_OK
activity.setResult(Activity.RESULT_OK);
activity.finish();
回到FirstActivity,我重写了onActivityResult(params)方法
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if(requestCode == 1) { //to make sure request was successful
if (resultCode == Activity.RESULT_OK) {
finish();
}
}
}
但是在SecondActivity完成之后没有调用onActivityResult()
。尝试调试并在FirstActivity首次启动时,这只是调用onActivityResult()
的时间,但是从SecondActivity返回时就不再了。
可能是什么问题?
提前谢谢!
答案 0 :(得分:4)
答案 1 :(得分:0)
您需要在第二个活动中创建应答意图,如下所示:
Intent answIntent = new Intent();
setResult(RESULT_OK, answIntent);
finish();