切换片段在viewpager中失败

时间:2015-07-15 09:55:32

标签: android android-fragments android-viewpager

我的层次结构是这样的。一个viewpager包含3个页面(所有片段),称为 cdistNewFragmentInvoledFragment,在viewpager之外,我设置了一个Radiobutton,用于在MeFragment和另一个名为Newfragment的片段之间切换,出于某些原因,我使用{ {1}}管理交换机,这里是![输入图像说明这里是我的代码

Page 1

Page 2

Page 3

RadioButton检查侦听器

Hotfragment

和FragmentPagerAdapter

hide(),show()

我的问题是private class CheckedChangeListener implements RadioGroup.OnCheckedChangeListener { @Override public void onCheckedChanged(RadioGroup group, int checkedId) { switch (checkedId) { case R.id.button_new: mFragmentAtPos0 = newfrag; fragTransaction = fragmentManager.beginTransaction(); if(!newfrag.isAdded()){ fragTransaction.hide(hotfrag).add(R.id.mainviewpager,newfrag).commit(); } else{ fragTransaction.hide(hotfrag).show(newfrag).commit(); } mFragmentAtPos0 = newfrag; Toast.makeText(MainActivity.this, "NEW", Toast.LENGTH_SHORT).show(); break; case R.id.button_hot: fragTransaction = fragmentManager.beginTransaction(); if(!hotfrag.isAdded()){ fragTransaction.hide(newfrag).add(R.id.mainviewpager,hotfrag).commit(); } else{ fragTransaction.hide(newfrag).show(hotfrag).commit(); } mFragmentAtPos0 = hotfrag; Toast.makeText(MainActivity.this, "HOT", Toast.LENGTH_SHORT).show(); break; } } } 没有显示,但它有效(我将日志代码放在hotfrag中进行检查),并且viewpager工作正常,我在这里停留了好几个小时但仍然没办法解决它。

我发现有一个非常相似的答案,就在这里 Replace Fragment inside a ViewPager,但我使用了hide,show,而不是替换。

任何人都可以提供帮助吗?非常感谢!

0 个答案:

没有答案