我有一个场景,我正在使用带有3个片段的bottomNavigation来加载单个Activity。在片段2中,我有一个包含多个片段的寻呼机。一旦所有相应的片段在寻呼机中加载了视图,我想保留片段2的状态。
答案 0 :(得分:0)
经过忙乱的事情,我想我已经解决了问题.. 我使用Singleton设计模式来处理这个问题,
我的父片段是一个单例类,它将保存片段列表,列表将有一个片段来呈现UI。
一旦用户点击bottomNavigation,它将加载相同的片段实例,因为它已经有一个片段列表,所以一旦我确保它有列表,我就会渲染具有相同列表和相同片段实例的寻呼机。
代码:持久化
if(listOfFragments!=null&&listOfFragments.size>0)
binding.tabLayout.setupWithViewPager(notificationBinding.notificationTabsContainer);
binding.tabLayout.setOnTabSelectedListener(this);
binding.notificationTabsContainer.setAdapter(pagerAdapter);
binding.notificationTabsContainer.setOffscreenPageLimit(listOfFragments.size());