Android 如何在从一个活动转到另一个活动并返回到以前的活动后保持价值?

Android 如何在从一个活动转到另一个活动并返回到以前的活动后保持价值?,android,android-intent,return-value,intentservice,Android,Android Intent,Return Value,Intentservice,因此,我的应用程序的工作原理是它有一个名为“添加提醒”的活动此活动有一些文本框,用户可以在其中输入值,然后用户通过单击GoogleMaps按钮进入下一个活动,他们可以点击一个位置并在点击标记后获取纬度和经度。Intent存储纬度和经度值。 当用户单击一个打勾图标的按钮时,这些值将被发送到上一个活动,因此我面临的问题是当用户返回到“添加提醒”活动时。如果用户在进入新的GoogLMaPS活动之前返回任何类型,那么文本框是空的,因为Android认为这是一个新的新活动,有一种方法可以保留这些值直到用户

因此,我的应用程序的工作原理是它有一个名为“添加提醒”的活动此活动有一些文本框,用户可以在其中输入值,然后用户通过单击GoogleMaps按钮进入下一个活动,他们可以点击一个位置并在点击标记后获取纬度和经度。Intent存储纬度和经度值。 当用户单击一个打勾图标的按钮时,这些值将被发送到上一个活动,因此我面临的问题是当用户返回到“添加提醒”活动时。如果用户在进入新的GoogLMaPS活动之前返回任何类型,那么文本框是空的,因为Android认为这是一个新的新活动,有一种方法可以保留这些值直到用户来自GoogLMaPS活动。 添加提醒活动意图

startActivity(new Intent(AddReminderActivity.this,MapsActivity.class));
Intent data = new Intent(MapsActivity.this, AddReminderActivity.class);
                    Bundle b = new Bundle();
                    b.putString("lat", latitude.toString());
                    b.putString("lng", longitude.toString());
                    data.putExtra("personBdl", b);
                    startActivity(data);
谷歌地图活动意图

startActivity(new Intent(AddReminderActivity.this,MapsActivity.class));
Intent data = new Intent(MapsActivity.this, AddReminderActivity.class);
                    Bundle b = new Bundle();
                    b.putString("lat", latitude.toString());
                    b.putString("lng", longitude.toString());
                    data.putExtra("personBdl", b);
                    startActivity(data);

你做错了。您不应该通过启动意图来返回AddReminder。返回finish(),返回上一个活动。要从AddReminder活动返回值,请使用startActivityForResult启动MapsActivity,并在调用finish之前设置一个结果包。

那么我应该如何执行AddReminder->Google Maps->AddReminder?您可以使用startActivityForResult启动地图。您可以使用finish(0)(或者手机上的“后退”按钮将自动调用finish)返回AddReminder。您可以使用onActivityResult从MapsActivity获得结果。请参阅“像符咒一样工作”。谢谢