2

我正在音乐播放器应用程序中实现向上按钮。此应用程序的玩家活动可以有多个入口点(不同活动中的多个曲目列表)。我试图弄清楚如何正确实现向上按钮模式。根据文档:

导航到具有多个入口点的屏幕

有时,一个屏幕在应用程序的层次结构中没有严格的位置,并且可以从多个入口点访问——例如可以从应用程序中的任何其他屏幕访问的设置屏幕。在这种情况下,Up 按钮应该选择返回 >referring 屏幕,其行为与 Back 相同。

这是有道理的,在正常使用情况下,我只会调用 onBackPressed() 甚至是 finish()。但是有一种情况我不知道如何处理。播放发生在带有通知的服务中。如果用户在播放某些内容时退出应用程序,他/她可以单击通知直接转到播放器。

在这一点上,玩家将是堆栈中唯一的东西,所以我不确定当用户点击时的最佳方式。理想情况下,我想选择一个默认登录页面(主页)导航到。我不确定如何在不查看后台堆栈的情况下知道将用户发送到哪里,而且似乎应该有一些更容易的东西。

所以我正在寻找这个序列的方法:

- user is in player activity and presses up
- if the entry point to the player is still on the backstack, I finish() to go back to the referring activity
- if the entry point is not on the backstack, I go to the home page

这听起来对吗,还有什么简单的方法可以实现吗?

4

0 回答 0