waq*_*lam 6 android replace onresume android-fragments
我正在尝试决定并在activity的onResume方法中显示一个片段,但如果再次选择之前添加的片段,则该活动将变为空白.
示例代码(带一个片段):
@Override
protected void onResume(){
FragmentTransaction trans = getSupportFragmentManager().beginTransaction();
trans.replace(R.id.myLayout, fragA);
trans.commit();
getSupportFragmentManager().executePendingTransactions();
}
Run Code Online (Sandbox Code Playgroud)
使用上面的代码,当第一次创建活动时,它会正确显示fragA,但是如果我按下Home Key然后切换回我的活动(为了再次激活onResume),它全部变为空白(看起来像fragA被删除).
替换之前添加的片段会自行删除吗?或如果它被自身替换,如何松散片段?
您无法用自己替换片段。替换的前半部分是删除该ID处的先前片段。删除片段后,片段管理器将无法再添加或使用该片段(因此,替换的添加部分将无法正常工作)。
根据您的用例,您有两种选择:
最后,您可能不需要调用executePendingTransactions。
| 归档时间: |
|
| 查看次数: |
6961 次 |
| 最近记录: |