管理片段后备栈和后退按钮的最佳方法

时间:2014-07-24 23:16:07

标签: android android-fragments

我确实需要处理片段后向堆栈和后退按钮,这与正常方式稍有不同,这是一个圆圈,抛出后面堆栈中的每个片段条目。

请假设您有一个包含三个项目的滑动菜单;简介,网络和工作场所。

每个人都会显示一个带有ListView的ListFragment,当你按下一个项目时,你会看到它。

所以后面的堆栈就像[list]< - [view]。问题在于后端堆栈的工作方式(或者我对它的理解,或者我正在做的不正确的使用)是当用户通过应用程序按下不同的项目时,它们将向后堆栈添加一个条目,它变得越来越长,如果用户想要进入主屏幕,按下后退按钮需要转到每个单独的条目,直到索引为0;喜欢这个[list]< - [view]< - [list]< - [view]等等。

我的问题是处理此要求的最佳方法是什么?当用户从滑动菜单中选择其中一个项目时,我应该从后面的堆栈中删除每个片段吗?我应该为每个菜单项设置一个后栈吗?

成就是每个菜单项处理后堆栈,当用户在任何列表视图上时,他按下后退按钮,他进入主屏幕。轻松导航!

任何建议都表示赞赏!

2 个答案:

答案 0 :(得分:0)

我想说在android中最好的做法就是保留后端堆栈,因此用户可以预测。如果用户从其他应用程序进入您的应用程序并点击后退按钮,则用户想要转到上一个应用程序,而不是应用程序主屏幕。我建议考虑另一个解决你要解决的问题的办法,或者添加一个抽屉。

希望我没有错过解释你想要完成的事情。

干杯!

答案 1 :(得分:0)

听起来你想要的是一个将用户直接带回主屏幕的按钮。您可以使用操作栏中的“主页”按钮执行此操作。有关详细信息,请参阅Providing Up Navigation