Android 在backback中保存数据

Android 在backback中保存数据,android,android-intent,android-activity,back-button,Android,Android Intent,Android Activity,Back Button,我有一个应用程序,它根据唯一id(uid)从服务器获取选项列表。当您单击该选项时,它会提供另一个基于uid的列表,就像在第一个活动中一样。它将单击的选项的uid传递给下一个活动,以便获取数据。按back键时,活动将忘记其uid,并引发空指针异常,因为它尝试使用空uid获取。如何让上一个活动在其位于backbackback时保留数据,或者如何在back press上将数据从活动2传递到活动1,以便为其提供uid 谢谢 当您启动第二个活动时,第一个活动将被销毁。返回时,将初始化第一个活动,但这是一个

我有一个应用程序,它根据唯一id(uid)从服务器获取选项列表。当您单击该选项时,它会提供另一个基于uid的列表,就像在第一个活动中一样。它将单击的选项的uid传递给下一个活动,以便获取数据。按back键时,活动将忘记其uid,并引发空指针异常,因为它尝试使用空uid获取。如何让上一个活动在其位于backbackback时保留数据,或者如何在back press上将数据从活动2传递到活动1,以便为其提供uid


谢谢

当您启动第二个活动时,第一个活动将被销毁。返回时,将初始化第一个活动,但这是一个新实例

启动第二个活动时,可以使用startActivityForResult()。并让第二个活动在完成时将UID传递回第一个活动


或者您可以将Uid保存在共享首选项、应用程序对象或静态类/单例中。

google developer上有一篇关于保存活动状态的文章:

您是否正在使用
addToBackStack
?围绕片段事务管理的一些代码可能会有所帮助。欢迎来到stack overflow,请将您的代码和logcat添加到您的帖子中。谢谢。只有当用户调用finish方法时,您的第一个活动才会被销毁,如果活动被销毁,您也无法返回。应用程序将被关闭。如果这是真的,只需将其放入一个局部变量,您就完成了。