单击后退按钮恢复 activity 数据

Restore activity data on clicking back button

在 Activity 1 我有 EditText 和 Button。单击按钮 Activity 2 次加载:

Intent intent = new Intent(this, Activity2.class);
startActivity(intent);

配置为 Activity 1 作为父级:

<activity android:name=".Activity2" android:parentActivityName=".Activity1" >
    <meta-data android:name="android.support.PARENT_ACTIVITY" android:value="com.domain.app.Activity1" />
</activity>

当我在 Activity 2 上单击后退按钮时,用户在编辑字段中输入的文本丢失了。我该如何恢复它?

我在 Activity 1 上尝试了 onSaveInstanceStateonRestoreInstanceState,但它不起作用(onRestoreInstanceState 从未被调用)。

我建议您使用 sharedPreferences class 来临时存储数据。这可能涉及在返回到 activity1 后使用另一个按钮加载 sharedpreferences 数据。祝一切顺利。

请确保不要将 "back" 与 "up" 混淆。向上导航与左下角或物理后退按钮不同。默认情况下,它会重新创建 up Activity,除非您在清单中将 up Activity 的启动模式设置为 "singleTop"。