我有一个活动让它称为活动A,它在创建时从数据库下载一些数据。数据存储在一个名为myData的自定义ArrayList中。启动另一个活动在之前的活动中,arraylist会发生什么
当用户点击按钮时,启动另一个名为B的活动。活动A将一些数据传递给活动B,我可以通过让我的类实现Parcelable来实现这一点。
我的理解是当活动B展开时,活动A将处于onPause或onStop状态。我的问题是,当Activity B关闭并且焦点返回到Activity A时,我的arraylist myData是否仍然存在?如果没有,我怎么能存储这些数据?
如果活动停留在onPause() - “用户返回到活动”的情况,那么这没有问题。但是,如果它在onStop()中 - “用户导航到Activity”就是这种情况,那么下一个调用的方法将是onRestart()。 ArrayList将被重新创建(并且之前的值将丢失)。 –
@ModularSynth如果活动A进入onStop状态。有没有保留我的arrayList数据?即我不想重新创建arrayList onRestart? – mHelpMe
如果你不杀死并重新启动你的Activity(你不通过onCreate()方法),那么很可能是。但是将ArrayList序列化到文件会更安全。以防万一。你知道,这些有趣的用户...他们喜欢旋转他们的设备。 –