0

我有以下安排:CatActivity -> FragA -> FragB;其中,FragA使用fragB.show(getChildFragmentManager(), "FragB」);啓動FragBDialogFragment onActivity結果從未達到

FragB推出與

Intent img = new Intent(Intent.ACTION_GET_CONTENT); 
img.setType("image/*"); 
startActivityForResult(Intent.createChooser(img, 「Choose Photo」),PHOTO_REQUEST_CODE); 

畫廊意圖的問題是,FragBonActivityResult從未達到。有誰知道爲什麼?
供參考:既沒有CatActivity也沒有FragA實現其各自onActivityResult方法。

+0

覆蓋'CatActivity'和'FragA'的'onActivityResult()',以調用它們的super。設置斷點。看看它掛在哪裏。 – 323go

回答

0

就我的經驗而言,我認爲onActivityResult是一個完全混亂的事實。

對於您的特定情況,我相信您應該通過FragB中的getParent方法從fragA中調用startActivityForResult。然後在FragA中獲得結果並使用getChildFragmentManager().getFragments()將它傳遞到子片段上。

我遵循這種模式的FragmentTabHost其中單個選項卡是子片段。似乎沒有任何默認代碼將活動結果傳遞到子片段。

+0

非常感謝您分享您的經驗。 – learner