Guy*_*Guy 4 android android-fragments onactivityresult
我有很多嵌套片段.
这就是我为结果开始活动的方式:
startActivityForResult(Intent.createChooser(intent, "Title"), FILE_PICK);
Run Code Online (Sandbox Code Playgroud)
我没有onActivityResult在其他任何地方覆盖.我试图把它调用活动A和它得到了所谓的,但后来即使我叫超级,它永远不会来到片段D.也试过打电话onActivityResult的MainFragment,它永远不会被任何所谓的存在.
Lui*_*rra 11
该活动将在活动中收到.要在Fragment D中拥有它,你必须传播它.
在您的父活动覆盖onActivityResult并开始调用onActivityResult您的片段:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
List<Fragment> fragments = fragmentManager.getFragments();
if(fragments != null){
for(Fragment fragment : fragments){
fragment.onActivityResult(requestCode, resultCode, data);
}
}
}
Run Code Online (Sandbox Code Playgroud)
在您的父片段中,您必须执行相同的操作,但请记住使用getChildFragmentManager以获取片段的片段管理器
List <Fragment> fragments = getChildFragmentManager().getFragments();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1018 次 |
| 最近记录: |