Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
android中的片段转换。。。!_Android_Android Fragments_Fragment Transitions - Fatal编程技术网

android中的片段转换。。。!

android中的片段转换。。。!,android,android-fragments,fragment-transitions,Android,Android Fragments,Fragment Transitions,请看看这个图案。可能吗 片段A>片段B>片段C>片段D>片段E 索引0>索引1>索引2>索引3>索引4 现在我想要的是:>>> 从片段E切换到片段B,而不移除片段D和C,也不再次添加片段E。 有可能索引不会通过这个影响,因为我需要打开片段E,如果按B>C>D中的“后退”键,则会像以前一样工作 谢谢 您可以这样尝试,如果片段为null,则声明片段,然后根据您的目的显示或隐藏。container1是本项目的布局图 <FrameLayout android:id="@+id/contai

请看看这个图案。可能吗

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

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

现在我想要的是:>>>

从片段E切换到片段B,而不移除片段D和C,也不再次添加片段E。 有可能索引不会通过这个影响,因为我需要打开片段E,如果按B>C>D中的“后退”键,则会像以前一样工作

谢谢

您可以这样尝试,如果片段为null,则声明片段,然后根据您的目的显示或隐藏。container1是本项目的布局图

<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
}

用BAFAIK碎片替换E碎片恐怕不行。你唯一能做的就是自己管理你的片段,比如:创建你自己的片段列表,然后覆盖onBackPress以充当Backback的poping。你想通过制作一个由5个片段组成的堆栈来实现什么?@pskink:我需要从E>B切换,如果我没有选择此片段中的任何内容,然后按back,它将带我到片段a,但此时我不想继续。。。我需要在不失去状态的情况下打开E。。为什么是碎片?它们不是为如此深度的航行而设计的。。。为什么不使用活动?我没有使用查看寻呼机。。。这就像是改变了看法。。但是我喜欢你写的方式。。。可能会有办法管理它。。我会告诉你最新情况。。谢谢我认为你应该移动到查看寻呼机,它很容易实现你不关心索引,只要检查你想显示的片段,在我的示例代码中,它是用来显示片段的,如果是片段B,你就这样做,隐藏全部,只显示B如何不工作给我。。请用一些片段详细说明。。谢谢
@Override
    public void onPageSelected(int position) {
        // set you logic here and set the relevant Fragment to the pager
}