【问题标题】:Android Navigation - How is it done?Android 导航 - 它是如何完成的?
【发布时间】:2011-03-22 15:45:39
【问题描述】:

好的,抱歉,这是一个有点“愚蠢”的问题。

目前我正在开发一个包含多个视图和 XML 文件的应用程序。如果我单击某些按钮,视图会发生变化等。

但是,我希望它像堆栈一样。因此,如果您转到第 2 页,按后退按钮将返回第 1 页。当前,后退按钮会破坏活动并关闭应用程序。

我唯一能想到的就是有状态,所以如果按下后退按钮,将视图设置为状态 X,但我不确定这是否是 Android 的“正确编程技术”。

另一个想法是拥有多个活动,因此当按下按钮时,会在旧活动之上创建一个新活动。但这似乎效率低下且愚蠢。

TIA

【问题讨论】:

    标签: android view android-activity navigation back-button


    【解决方案1】:

    是的,您需要多个Activities

    Activity 和 Intents 拥有很多关于 back stack 的内置知识,可以轻松地按照您的描述进行操作,同时为用户提供连贯的体验。

    也许您可以多描述一下您认为这对您的应用程序有效的原因?您是否以编程方式创建数百个活动?

    编辑 - 如果您来自另一个移动平台,其中应用程序部分更紧密地绑定在一起,您可能会尝试将 Android 应用程序视为更像网页。共享信息的最常见方式是通过查询字符串 (Intent) 和后退按钮有效,因为每次导航都会到达一个新页面 (Activity)。

    【讨论】:

    • 谢谢。这是我最初的想法,但我的室友说我很愚蠢xD
    • 是的,从其他平台的角度来看,这可能看起来很奇怪,但 Android 应用程序更像是“活动的松散捆绑包”,而不是单个单体应用程序。
    • 好吧,我不认为这对我的应用程序来说效率低下,因为我可能只会有 3 个级别。编辑(按回车键)。我只是在制作一个烹饪应用程序,您可以在其中浏览收据,然后进入食谱。但我想对于更大的应用程序,在一个又一个活动之后创建活动只会占用大量内存。
    【解决方案2】:

    android sdk 网站上的 Widget 示例代码“Wiktionary”在 LookupActivity.java 文件中有一些示例代码。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-19
      • 1970-01-01
      • 2018-02-18
      • 1970-01-01
      • 1970-01-01
      • 2020-03-24
      相关资源
      最近更新 更多