昨天在工作中由于要将股票详情界面插入到一个聊天的界面,而这个聊天的界面使用的Viewpager配套Fragment的方式,进行实现。自然而然我的股票详情界面也是使用fragment实现,由于我的fragment页面比较复杂,为了便于开发,我是使用了很多的fragment嵌套实现的,界面详情如图:
这整个界面都是fragment,里边至少又嵌入三个fragment。在聊天界面添加详情界面,目前添加了两个股票,一共有三帧,添加第一个股票平安银行还是ok的。
接着我们添加第二只华丽家族。请看看。
这样一看就全部乱了,通过代码添加的fragment貌似都没有添加上。出现这中情况的罪魁祸首,就是这样的代码导致的:
FragmentTransaction trans = getActivity().getSupportFragmentManager().beginTransaction();
如果我们将上边的代码改为:FragmentTransaction trans = getChildFragmentManager().beginTransaction();问题即可解决。就是说获取我自己本身的transaction,而不是整个acttivitiy的transaction。