I have a fragment called the MainFragment
with a TabLayout
. The TabLayout
has two tabs with a fragment each. Lets call it Fragment A
and Fragment B
.
When I open the MainFragment
, Fragment A
and Fragment B
are populated within the TabLayout
as expected. When I resume MainFragment
, Fragment A
and Fragment B
are not resumed, and I get two empty tabs.
My MainFragment
looks like this
@Override
public View onCreateView(
LayoutInflater inflater, @Nullable ViewGroup container,
@Nullable Bundle savedInstanceState) {
return inflater.inflate(R.layout.main_fragment, null);
}
@Override
public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
Injector.component().inject(this);
setupViewPager(viewPager);
tabLayout.setupWithViewPager(viewPager);
}
private void setupViewPager(ViewPager viewPager) {
ViewPagerAdapter adapter = new ViewPagerAdapter(getFragmentManager());
adapter.addFragment(new FragmentA(), "Fragment A");
adapter.addFragment(new FragmentB(), "Fragment B");
viewPager.setAdapter(adapter);
}
How do I solve this?
由于Fragments A
和B
是MainFragment
子片段, MainFragment
使用getChildFragmentManager()
而不是getFragmentManager()
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.