假设您有一个名为“main”的主要活动,以及其他一些有效的子活动,然后返回一些数据。每次调用main时,它都会一次启动一个子活动。
主:
onCreate...{
Intent i1 = new Intent("com.bla.bla.activity1");
startActivity(i1);
//Get bundles from activity1 and save some variables..
Intent i2 = new Intent("com.bla.bla.activity2");
startActivity(i2);
//Get bundles from activity2 and save some variables..
Intent i3 = new Intent("com.bla.bla.activity3");
startActivity(i2);
//Get bundles from activity1 and save some variables..
}
如果我理解正确,首先会创建activity1,然后销毁。代码是否会恢复并启动activity2,或者它是否会再次启动activity1,因为主要活动已暂停然后恢复(假设我们不添加onResume / onPause等...)?
编辑:
让我们说这些子活动每个返回一个字符串,每个字符串应该保存在主活动结束时SQL条目的一个单独的列中。主要活动应收集三个字符串,将其保存为en entry和destroy本身。 为了使其工作,主要活动必须在意图“i1”完成一些工作并返回字符串之后恢复例如意图“i2”。 如何最好地实现这一结果?
答案 0 :(得分:0)
像亚历克斯所说,你不会那样做。您希望使用不同的Intent来调用不同的Activity来创建程序流。 Main可能会导致活动1,活动1会导致2,3或4.如果您有多个活动,则可以使用switch语句根据满足或未满足的条件确定要启动的活动。
希望这会有所帮助。
编辑答案:
如果要保存来自不同活动的变量,您可能希望从第一个,第三个,从第二个开始第二个活动,依此类推。要为数据库创建数据,只需创建一个对象,然后使用Parcelable
接口将该对象从Activity传递给Activity。在您的每个活动中,您可能希望使用方法将返回的数据保存到数据库中,如您所愿。