猿问

使用片段为Android中的每个选项卡分离回堆栈

我正在尝试在Android应用程序中实现导航选项卡。由于TabActivity和ActivityGroup是不推荐的,所以我想使用片段来实现它。

我知道如何为每个选项卡设置一个片段,然后在单击选项卡时切换片段。但是,如何为每个选项卡拥有一个单独的后堆栈?

例如,片段A和B在Tab 1下,片段C和D在Tab 2下。当应用程序启动时,显示片段A并选择Tab 1。然后,可以用片段B代替片段A。当选择Tab 2时,应该显示片段C。如果选择了Tab 1,则应再次显示片段B。此时,应该可以使用Back按钮显示片段A。

另外,当设备旋转时,维护每个选项卡的状态也是很重要的。


呼唤远方
浏览 522回答 3
3回答

不负相思意

该框架目前不会自动为您执行此操作。您需要为每个选项卡构建和管理自己的后台堆栈。老实说,这似乎是一件值得怀疑的事情。我无法想象它会产生一个像样的UI-如果回键将根据我的选项卡执行不同的操作,特别是当回键在堆栈顶部时也有正常的关闭整个活动的行为的话.听起来很恶心。如果您试图构建类似于Web浏览器的UI,那么获得用户自然的UX将需要根据上下文对行为进行许多细微的调整,因此您肯定需要自己进行后台堆栈管理,而不是依赖于框架中的某些默认实现。例如,试着注意后退键是如何与标准浏览器交互的,您可以通过各种方式进出它。(浏览器中的每个“窗口”本质上都是一个选项卡。)
随时随地看视频慕课网APP

相关分类

Android
我要回答