【发布时间】:2014-07-24 07:19:06
【问题描述】:
我已经使用片段进行了应用。首先有一个主屏幕,其中有一个登录按钮。当用户单击登录按钮时,会打开一个新片段,其中包含用户名和密码。我已将登录片段放入backstack,以便用户可以导航到主屏幕。如果用户在登录片段中输入正确的凭据,则打开主片段。我还放置了主片段,以便我可以来回导航。但现在我想要的是当用户在主屏幕上,如果他按下后退按钮,应用程序应该关闭,但在我的情况下,它会返回登录片段。
例如 1] 如果用户从主屏幕按下登录按钮
backstack contains "login"
2] 现在,如果用户输入正确的凭据并单击确定,则打开主片段
backstack contains "main"
"login"
3] 现在在主片段中我有 2 个按钮说 A 和 B,现在如果用户点击按钮 A
backstack contains "A"
"main"
"login"
现在我想要的是,当用户在主片段上单击后退按钮时,应用程序应该完成,但在我的情况下,它会返回登录片段,因为登录仍然存在于后台堆栈中
【问题讨论】:
-
您是否在未将主片段添加到后台堆栈的情况下尝试了您的问题?
-
先生,在家里的碎片中,我有几个按钮可以打开另一个碎片,所以有必要把家里的碎片放到后台
-
您可以从需要关闭所有内容的地方调用 getActivity().finish() 吗?