【问题标题】:Android Tabs/Fragments lifecycleAndroid 标签/片段生命周期
【发布时间】:2012-06-25 20:24:22
【问题描述】:

就标签/片段而言,它们是否可以保留信息?例如,如果我有一个选项卡,在第一次选择时进行了 http 调用,然后显示了信息,那么我是否可以让它在选择时再次显示信息而不进行另一个 http 调用?

【问题讨论】:

    标签: android android-layout android-fragments android-tabhost


    【解决方案1】:

    简短的回答,是的。

    在 Android 中有两种使用选项卡的方法。您可以使用 TabActivity 或 TabHost。由于您提到了片段,因此您很可能会想到 TabHost。不过,为了以防万一,我将包含两者的描述:

    标签主机:

    由于您的所有片段都包含在单个活动中,因此在选项卡之间导航时,不会为您要离开的片段触发任何生命周期事件,因此无论您是否希望数据都是持久的。

    标签活动:

    这是有点棘手的地方。单击新选项卡实际上会停止旧活动,从而清除大部分数据。保留任何特定数据的最佳方式是将其放在 SingletonApplication object 中。这是一个扩展 Application 的类,就像您的 Activity 类扩展 Activity 一样。然后所有其他活动都可以访问这个类,您可以为您想要的任何数据提供标准的 getter/setter。

    如果您要保存大量数据,您可能需要考虑创建一个SQLite 数据库,因为它会节省内存。

    【讨论】:

      猜你喜欢
      • 2014-07-28
      • 1970-01-01
      • 1970-01-01
      • 2020-07-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-11
      相关资源
      最近更新 更多