Android中關(guān)于FragmentA嵌套FragmentB的問題
問題描述:
在項目中Activity A中嵌套Fragment B,F(xiàn)ragment B中再嵌套Fragment C,如圖:
問題1:在點擊Activity A中主菜單1進行切換時,報錯Fragment C already added。
解決:在Framgent B中添加Fragment C 調(diào)用add()時先判斷fragmentC.isAdded()
FragmentManager fm=getActivity().getSupportFragmentManager(); FragmentTransaction ft=fm.beginTransaction(); if(!sub1Fragment.isAdded()){ ft.add(R.id.rl_fragment_container, sub1Fragment).commit(); }
問題2:修改后發(fā)現(xiàn),F(xiàn)ragment C布局添加失敗,同時切換主菜單2時,報錯。
解決:這是Fragment的嵌套問題。FragmentB中的嵌套不能再用getActivity().getSupportFragmentManager();要用getChildFragmentManager();
即上面代碼應(yīng)改為:
FragmentManager fm=getChildFragmentManager(); FragmentTransaction ft=fm.beginTransaction(); if(!sub1Fragment.isAdded()){ ft.add(R.id.rl_fragment_container, sub1Fragment).commit(); }
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Android Studio 3.x版本 的輸入法遇到的坑及解決方案
前些天把AndroidStudio從2.3.3升級到3.0,遇到了不少坑,其中一個巨坑就是輸入中文不提示的問題,下面給大家分享Android Studio 3.x版本的輸入法遇到的坑及解決方案,一起看看吧2017-11-11Android Alertdialog(實現(xiàn)警告對話框)
本篇文章主要介紹了Android Dialog對話框,具體實現(xiàn)了警告對話框的效果,有需要的可以了解一下。2016-11-11Android那兩個你碰不到但是很重要的類之ViewRootImpl
這兩個類就是ActivityThread和ViewRootImpl,之所以說碰不到是因為我們無法通過正常的方式引用這兩個類或者其類的對象,本文就嘗試從幾個我們經(jīng)常接觸的方面先談?wù)刅iewRootImpl,感興趣的可以參考閱讀下2023-05-05淺談Android Studio 3.0 工具新特性的使用 Android Profiler 、Device File
這篇文章主要介紹了淺談Android Studio 3.0 工具新特性的使用 Android Profiler 、Device File Explorer的相關(guān)資料,需要的朋友可以參考下2017-11-11Android實現(xiàn)學(xué)生管理系統(tǒng)
這篇文章主要為大家詳細介紹了Android實現(xiàn)學(xué)生管理系統(tǒng)的相關(guān)代碼,供大家學(xué)習(xí)借鑒,感興趣的小伙伴們可以參考一下2016-03-03Android源碼探究之BaseDexClassLoader的使用
今天解決一個插件化問題的時候,竟然發(fā)現(xiàn)SO沒有正常加載,很怪異,最終排查下來發(fā)現(xiàn)竟然是參數(shù)傳入錯誤導(dǎo)致的。這就扯到了本文的標題上了,BaseDexClassLoader中的4個參數(shù)該如何傳入,傳入的又是什么呢2022-08-08Android應(yīng)用開發(fā)中CardView的初步使用指南
這篇文章主要介紹了Android應(yīng)用開發(fā)中CardView的初步使用指南,CardView主要處理一些卡片型的視圖布局,需要的朋友可以參考下2016-02-02Flutter學(xué)習(xí)教程之Route跳轉(zhuǎn)以及數(shù)據(jù)傳遞
這篇文章主要給大家介紹了關(guān)于Flutter學(xué)習(xí)教程之Route跳轉(zhuǎn)以及數(shù)據(jù)傳遞的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家學(xué)習(xí)或者使用Flutter具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08Android中Glide獲取圖片Path、Bitmap用法詳解
這篇文章主要介紹了Android中Glide獲取圖片Path、Bitmap用法以及代碼分析,需要的朋友們參考一下吧。2017-12-12