在Android中,还有其他场景会导致Activity重新创建,如配置更改、语言更改等。为了避免这种情况,可以在AndroidManifest.xml文件中为活动添加配置属性:
android:configChanges="keyboardHidden|orientation|screenSize|locale"
这将告诉 Android 活动在上述更改发生时不要重新创建。然后,在代码中覆盖 onConfigurationChanged()方法并根据需要处理更改。例如,更改配置时更新布局:
@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
setContentView(R.layout.activity_main);
}