【问题标题】:Android: Navigate to custom home screenAndroid:导航到自定义主屏幕
【发布时间】:2013-06-24 15:33:01
【问题描述】:

我想实现后退导航(通过按操作栏中的主页按钮),因为它显示了所附图片。 如您所见,登录屏幕被访问过一次,它将用户带到活动 B。当按下一个项目时,它会将用户带到活动 B 的新实例,依此类推。将其视为包含登录的文件导航应用程序。

那么,我的问题是,实现这一目标的最优雅的方式是什么?提前致谢

【问题讨论】:

  • “不要改变用户的期望”当用户点击Home按钮时,他们希望离开你的应用程序并转到他们的主屏幕(这也是Android文档强调的)最优雅解决方案,在操作栏上添加一个按钮,让用户回到初始状态,实现真的取决于你的代码。

标签: android android-intent android-activity navigation homescreen


【解决方案1】:

做你想做的事的唯一方法是让你的应用成为一个启动器应用。这意味着它将替换用户当前用于其主屏幕的启动器。

如果这不是您想要实现的,那么您就不走运了,因为出于安全目的,您无法覆盖主页按钮。

编辑:

如果您想使用向上导航,请发送一个意图。请参阅docs 了解如何使用向上导航

【讨论】:

  • 编辑了我的问题,我改为“操作栏中的主页按钮”
  • 那么你所要做的就是对你想要的活动开始一个新的意图。请参阅文档developer.android.com/guide/topics/ui/actionbar.html#Home
  • 来自文档“使用此标志 (FLAG_ACTIVITY_CLEAR_TOP),如果您要启动的活动已经存在于当前任务中,则其顶部的所有活动都将被销毁并被带到前面。添加这个标志通常很重要,因为“回家”是一个相当于“回去”的动作,您通常不应该创建 home 活动的新实例”。所以问题是:我怎样才能保留第一个 B 活动的参考?
  • 如果活动已经在后台堆栈中(在你的情况下应该),它所做的就是将该活动带到前面并清除该活动下方的任何内容
  • 请再次阅读我的问题。如何确定哪个 Activity 是我的 FIRST B 活动?
猜你喜欢
  • 2019-09-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-01-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多