android中的片段转换..



请看一下这个模式。有可能吗???

片段A>片段B>片段C>片段D>片段E

索引0>索引1>索引2>索引3>索引4

现在我想要什么:>>

片段E切换到片断B,不删除碎片D和C也不再次添加片段E。索引可能不会因此而受到影响,因为如果从B>C>D按回车键,我需要打开片段E。

感谢

if (fragmentA == null) {
    fragmentA = new AFragment();
    fragmentManager.beginTransaction().add(R.id.container1, fragmentA).commitAllowingStateLoss();
} else {
    if (fragmentA != null) 
        fragmentManager.beginTransaction().show(fragmentA).commit();
    if (fragmentB != null)
        fragmentManager.beginTransaction().hide(fragmentB).commit();
    if (fragmentC != null)
         fragmentManager.beginTransaction().hide(fragmentC).commit();
    if (fragmentD != null)
        fragmentManager.beginTransaction().hide(fragmentD).commit();
}

您可以尝试这样做,如果Fragment为null,则声明它,然后根据您的目的显示或隐藏。集装箱1是的布局

<FrameLayout
    android:id="@+id/container1"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_above="@+id/lnBottomButton" />

这是包含活动中所有片段的主视图

如果您使用ViewPager,则可以实现ViewPager.OnPageChangeListener,并且在iots onPageSelected中,您将设置逻辑以使用If-else-更改页面

@Override
    public void onPageSelected(int position) {
        // set you logic here and set the relevant Fragment to the pager
}

最新更新