我有3项活动。 Activity A
是父活动,Activity B
作为Activity A
的子活动启动。现在,当我从StartActivityForResult
调用Activity B
Activity C
时,只调用了Activity A's onActivityresult
。我想在Activity B's OnActivityResult
中获得结果。
Intent it = new Intent(B.this, C.class);
getParent().startActivityForResult(it, REQUEST_CODE);
如果我这样打电话。
startActivityForResult(it, REQUEST_CODE);
onActivityResult
都没有调用。
任何帮助都会得到赞赏。
答案 0 :(得分:0)
只需使用以下代码行从B调用活动C.
Intent it = new Intent(B.this, C.class);
startActivityForResult(it, REQUEST_CODE);
您将在“B”活动中获得结果onActivityResult()
;
答案 1 :(得分:0)
谢谢你的帮助。 我解决了我的问题。这是由于ActivityGroup。我使用这些方法。
Intent it = new Intent(B.this, C.class);
getParent().startActivityForResult(it, REQUEST_CODE);
这将为您提供活动A的OnActivityResult中的结果。你需要从活动A的结果中调用它。
if (requestCode == 1) {
ActivityB activity = (ActivityB)getLocalActivityManager().getCurrentActivity();
activity.onActivityResult(requestCode, resultCode, intent);
}
这将调用Activity B的onActivityResult。