我试图了解按下后退按钮时会发生什么。系统如何操纵后栈?窗户把手从哪里到顶窗?
我调查了PhoneWindowManager.java
,但找不到我要找的东西。有人早点看过这个代码吗?
答案 0 :(得分:1)
您所指的“操作栏中的后退按钮”称为“向上按钮”。文档中的那篇文章很好地解释了两者之间的差异:Navigation with Back and Up。
简而言之:
例如,当您从其他应用导航到应用时,差异就是市场。例如:您正通过邮箱中的链接访问应用程序的Google Play屏幕。进入Google Play:
答案 1 :(得分:0)
好吧,这会让你回来,就像后退按钮一样:
super.onBackPressed();
答案 2 :(得分:0)
onBackPressed()的文档说“后退”按钮只是结束当前活动。不需要后台操纵。
在更深层次上,Android会在Task内维护一系列活动,并且可以确定在最高活动结束时下一个要显示的活动。但这些机制存在于本机代码中,可能超出了您尝试的范围。据我所知,你可以用Java做的最好的就是使用RunningTaskInfo(源代码here),它将在当前任务中公开“基础”和“顶层”活动。
如果您正在尝试实施复杂的应用导航,可以使用a number of flags来控制活动在堆栈上的放置方式。