Android 为什么当用户在纵向和横向模式之间切换时,系统会销毁并重新启动活动?

Android 为什么当用户在纵向和横向模式之间切换时,系统会销毁并重新启动活动?,android,Android,正如我们所知,当用户在纵向和横向模式之间切换时,android会破坏并重新启动一个活动,我们可以通过覆盖onConfigurationChanged()回调来防止这种情况。请任何人向我解释一下系统销毁和启动活动的实际需要是什么?如果我覆盖onConfigurationChanged(),是否有任何副作用 虽然这种行为非常强大,但因为您的应用程序能够适应 在运行时自动切换到设备的配置,它是 有时会让新安卓开发者感到困惑,他们想知道为什么他们的 活动被销毁并重新创建。面对这个"问题", 开发人员选择

正如我们所知,当用户在纵向和横向模式之间切换时,android会破坏并重新启动一个活动,我们可以通过覆盖
onConfigurationChanged()
回调来防止这种情况。请任何人向我解释一下系统销毁和启动活动的实际需要是什么?如果我覆盖
onConfigurationChanged()
,是否有任何副作用

虽然这种行为非常强大,但因为您的应用程序能够适应 在运行时自动切换到设备的配置,它是 有时会让新安卓开发者感到困惑,他们想知道为什么他们的 活动被销毁并重新创建。面对这个"问题", 开发人员选择自行处理配置更改, 在我看来,一个短期的解决方案将使他们的生活复杂化 当其他设备出现或应用程序变得更强大时 复杂的自动资源处理是一种非常高效和简单的方法 使应用程序的用户界面适应各种设备和应用程序的方法 设备配置。但有时也要付出代价

参考:

虽然这种行为非常强大,但因为您的应用程序能够适应 在运行时自动切换到设备的配置,它是 有时会让新安卓开发者感到困惑,他们想知道为什么他们的 活动被销毁并重新创建。面对这个"问题", 开发人员选择自行处理配置更改, 在我看来,一个短期的解决方案将使他们的生活复杂化 当其他设备出现或应用程序变得更强大时 复杂的自动资源处理是一种非常高效和简单的方法 使应用程序的用户界面适应各种设备和应用程序的方法 设备配置。但有时也要付出代价


参考:

重新启动活动的主要目的是因为Android需要更改布局、资源等以适应新的屏幕方向。您可能知道,每个方向(通常)都有自己的方向。安卓系统的设计者们决定,最好是简单地重新启动活动,因为在改变资源的过程中需要进行大量的返工

这一点在蜂巢出现后尤为重要。根据您的方向,您可以显示完全不同的片段集和关联的数据集


我强烈建议不要覆盖
onConfigurationChanged()
。相反,请阅读他在回答中提供的链接。它展示了如何使用
onretainonconfigurationinstance()

更有效地处理方向更改重新启动活动的主要目的是因为Android需要更改布局、资源等以适应新的屏幕方向。您可能知道,每个方向(通常)都有自己的方向。安卓系统的设计者们决定,最好是简单地重新启动活动,因为在改变资源的过程中需要进行大量的返工

这一点在蜂巢出现后尤为重要。根据您的方向,您可以显示完全不同的片段集和关联的数据集


我强烈建议不要覆盖
onConfigurationChanged()
。相反,请阅读他在回答中提供的链接。它展示了如何使用
onretainonconfigurationinstance()

是的!更有效地处理方向更改!。。你认识杰姆亨德先生。这篇文章很好。在绝对需要OnConfiguration Changed()之前,男性从不尝试使用它。假设u有许多应用程序资源(如布局文件、绘图等)在配置更改时更改为b。那么最好让系统在运行时自行处理剂量变化。如果您使用OnConfiguration Changed()选项,则必须手动执行所有剂量填充。是的!。。你认识杰姆亨德先生。这篇文章很好。在绝对需要OnConfiguration Changed()之前,男性从不尝试使用它。假设u有许多应用程序资源(如布局文件、绘图等)在配置更改时更改为b。那么最好让系统在运行时自行处理剂量变化。如果使用OnConfiguration Changed()选项,则必须手动执行所有剂量填充。