2012-04-02 39 views
0

我是新会的android.I我工作的一个应用程序中,我有两个活动,让说A和B 在活动AI有一些items.I的列表视图中有活性的按钮的哪个需要我活动B.在活动BI有一个寻求栏。如何保存活动的实例?

我使用的是寻求酒吧过滤活动A.

的结果,我在活动B两个键取消和过滤。

调整寻求杆如果用户点击按钮滤波器比它采取用户活动A和示出过滤器结果之后。 用户可以活动A和B.活动之间发挥

现在三个不同的场景是在那里回来,从活动B到A

  1. 按下筛选按钮
  2. 按下取消按钮
  3. 按下手机的后退按钮

如果用户按下过滤按钮调整搜索栏后,活动A重新排序并显示过滤器重新排序sults。在这里,我要保存活动B的实例,以便从活动一,如果用户再次在活动去B,则我可以显示活动B.以前的状态(我能够做到这一点),如果

在第二个方案用户再次调整搜索栏并按下取消按钮,然后活动A重新排序。在这里我不想保存活动B的实例,如果用户再次从活动A进入活动B,那么我想显示以前的活动状态B.(我没有得到如何做到这一点??)

在第三种情况下,如果用户再次调整seek-bar并按下手机的后退按钮,则Activity A重新排序,但现在如果用户再次从Activity中进入Activity B然后一个活动B重新启动,我不想要,这里我也想显示前一个站B.活动的TE(我没有得到如何做到这一点也?)

我坚持这个问题。 非常感谢你提前。

回答

0

您必须考虑每个案件,并相应地管理活动的生命周期。你做得很好,问题是如何管理它。所以,第一步是要研究这个:

activity and lifecycles

理解如何活动的生命周期由Android操作系统,你对你的方式处理后:管理你的第二个活动的生活,让状态通过覆盖onPause方法(当你的活动不在应用程序的前面时调用)或者如果你不想保存状态来完成活动(有效地调用onStop方法),可以使它变得更好(

我会以这种方式解决这个问题:

    活动中的3210
  • 我用startActivityForResult调用活动B.这样,当活动B完成时,它的状态不会受到影响。因此,在活动B中调用finish()以返回到活动A而不保存它的状态。
    • 想要保存活动b的状态时,请调用活动A,以便调用onPause方法并保存状态。

希望能够为您澄清。

+0

嘿..非常感谢你的回复。我已经研究了活动的生命周期。我仍然有一些困惑。我能够保存任何活动的价值B.但我们可以保存ui还意味着seek-bar adjustment.plz让我不应该如何保存状态并通过提供一些代码示例来恢复它。非常感谢你提前。 – 2012-04-02 14:46:38