[英]In android how do I create different fragments/activities stacks within each tab that persist across tab changes?
TAB1 TAB2 TAB3
| | |
FragmentA FragmentC FragmentE
| | |
FragmentB FragmentD FragmentF
我希望我的用户界面如上所示进行布局。 我已经阅读了片段的工作原理,并且看起来应该能够实现一个用户界面,该界面允许我在选项卡之间切换,以便每个选项卡都有一个片段,并且选择片段上的某些内容将导致显示另一个片段。
现在的问题是:我看不到如何在每个选项卡中维护不同的片段堆栈。 我想要的是在Tab2中使用“后退”按钮时能够从fragmentD转到FragmentC。 切换到Tab1应该会显示FragmentB,并允许我使用BACK按钮导航到FragmentA。 有没有办法像我描述的那样具有多个片段堆栈?
该模式应如下所示:
TAB1 TAB2 TAB3
| | |
Activity 1 Activity 2 Activity 3
| | |
FragmentA FragmentC FragmentE
| | |
FragmentB FragmentD FragmentF
您无法(就我所知)无法使用当前的API进行操作。 在这里查看更多详细信息。
在您的SDK中,您有de APIdemos示例...在这里您将找到示例代码...,然后将其导入项目。 从现有来源创建新文件,然后转到/ androisdkdirectory / samples / android-x / Apidemos,然后完成
您将找到一个Java文件,并在其中找到不同选项卡类型的视图,这对学习可使用的新视图非常有用。
我的猜测是,如果您只是避免使用Backstack并按标签引用片段,则有可能实现。 例如,如果给fragmentC标记为“ fragmentC”,则如果fragmentD可见,则可以创建一个FragmentTransaction,将FragmentD替换为fragmentC。 当您按照此处的布局定义转换时,后向堆栈似乎更有价值。
你为什么不打电话:
fragmentManager.popBackStack(null, FragmentManager.POP_BACK_STACK_INCLUSIVE);
每当单击选项卡?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.