gpt4 book ai didi

java - 在 Android 中重新创建 Activity

转载 作者:行者123 更新时间:2023-12-01 13:49:06 24 4
gpt4 key购买 nike

在 Android 应用程序中,当您旋转屏幕时,会调用 onCreate() 来绘制 View 并创建对象。 TextView 对象恢复以前的文本,但 ImageView 对象则不能。这是有原因的吗?任何答案都将帮助我了解 Android 的工作原理:)

非常感谢,

最佳答案

方向改变时,整个 Activity 将被重新创建。如果您想在方向更改后恢复数据,可以使用 onSaveInstanceState 和 onRestoreInstanceState 来实现。当您更改方向时,会调用 onSaveInstanceState 将值保存在 Bundle 中,重新创建 Activity 后,会调用 onRestoreInstaceState 再次从 Bundle 中加载值。您可以像这样使用它:

  @Override
public void onSaveInstanceState(Bundle savedInstanceState) {
super.onSaveInstanceState(savedInstanceState);

// "Value" is a tag with which you can load the String again in onRestoreInstanceState.
savedInstanceState.putString("Value", this.stringToSave);
}

@Override
public void onRestoreInstanceState(Bundle savedInstanceState) {
super.onRestoreInstanceState(savedInstanceState);

// Use the tag "Value" to load the String again.
this.stringToSave = savedInstanceState.getString("Value");
}

关于java - 在 Android 中重新创建 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20106297/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com