tva*_*nt2 1 android android-activity onactivityresult
我不知道这是预期的行为,但如果我这样做的OneActivity推出TwoActivity:
Intent intent = new Intent(this, TwoActivity.class);
startActivityForResult(intent, RESULT_OK);
Run Code Online (Sandbox Code Playgroud)
而在TwoActivity当我传回OneActivity:
Intent resultIntent = new Intent();
resultIntent.putExtra(SOURCE, TAG);
setResult(RESULT_OK, resultIntent);
finish();
Run Code Online (Sandbox Code Playgroud)
用上面的代码和覆盖onActivityResult后OneActivity没有任何反应.onActivityResult似乎甚至没有被称为.但是,如果我RESULT_OK改为0,它就有效.
这是预期的吗?还有其他人经历过吗?
查看startActivityForResult方法的docs定义.它说:
requestCode int:如果> = 0,当活动退出时,将在onActivityResult()中返回此代码.
所以你的请求代码应该> = 0.如果你检查RESULT_OK响应代码的值,它是-1.请注意,请求代码与结果代码不同,这一点很重要.请求代码用于标识结果的请求,结果代码告诉您请求是否成功.
| 归档时间: |
|
| 查看次数: |
3824 次 |
| 最近记录: |