List<Fragment> listOfFragments = new ArrayList<>();
android.support.v4.app.FragmentTransaction trans =
getSupportFragmentManager().beginTransaction();
tabHost.setCurrentTab(0);
if (my_menu_status) {
listOfFragments.add(new Fragment3());
listOfFragments.add(new Fragment2());
trans.replace(R.id.view_pager, new Fragment3()).commit();
my_menu_status = false;
}else{
listOfFragments.add(new Fragment1());
listOfFragments.add(new Fragment2());
trans.replace(R.id.view_pager, new Fragment1()).commit();
my_menu_status = true;
}
MyFragmentPagerAdapter myAdapter = new MyFragmentPagerAdapter
(getSupportFragmentManager(), listOfFragments);
viewPager.setAdapter(myAdapter);
viewPager.setOnPageChangeListener(this);
return true;
}
먼저, my_menu_status는 true입니다.
그리고 viewPager는 처음에 fragment1과 fragment2로 이루어져 있습니다.
여기서 문제점이 하나 있는데, 처음 버튼을 눌러서 replace를
실행시키고 나면 분명 fragment1 -> fragment3으로됩니다.
근데 다시한번 누르면 fragment1의 view가 하나도 안나타나고
fragment3의 레이아웃이 계속 유지가 됩니다.
근데 제가 log를 이용해서 봤는데 분명히 fragement1의 onCreateView는 작동이 됩니다.
어떻게 하면 fragment3으로 갔던 view_pager를 다시 fragment1로 오겠끔 할까요?