Android: 如果可以从清单中处理,为什么我们需要担心屏幕方向变化?
Android: Why do we need to worry about screen orientation change if it can be handled from manifest?
关于我们如何克服屏幕方向的变化存在很多问题。因为大家都知道,当我们旋转屏幕时,会重新创建整个 activity 并且会出现意想不到的结果。
似乎可以解决此问题的一个解决方案是将其添加到清单中的 activity 标记:
<activity
android:configChanges="orientation|screenSize" >
</activity>
我的问题
如果上述解决方案允许activity旋转而不用重新创建,那我们为什么还要担心这个问题呢?我们为什么要关心架构组件之类的东西?
谢谢。
编辑
我将编辑问题背后的想法,以便未来的观众理解我的意思。
如果我确实在我的所有活动中都使用了上述内容,那么我是否应该期望一切都能克服屏幕方向的变化(例如:从纵向切换到横向,反之亦然)。
示例:
我每次到达列表顶部时都会对项目列表进行分页,然后突然变成横向...这是否意味着在清单中添加以上内容不会将我的列表重新启动到默认项目(所以我必须重新分页)。
- 您可能需要根据 运行 您的应用程序所在设备的方向和屏幕尺寸显示不同的布局。
- 您可能需要根据自己的需要重新创建 activity,以便您可以根据屏幕尺寸重新组织屏幕中显示的数据。
- 如果您的应用程序只显示一种布局而不考虑屏幕旋转,您可以只输入
android:screenOrientation="portrait"
或 android:screenOrientation="landscape"
来摆脱您处理屏幕更改的情况方向。
还有其他用例需要处理屏幕的方向。
关于我们如何克服屏幕方向的变化存在很多问题。因为大家都知道,当我们旋转屏幕时,会重新创建整个 activity 并且会出现意想不到的结果。
似乎可以解决此问题的一个解决方案是将其添加到清单中的 activity 标记:
<activity
android:configChanges="orientation|screenSize" >
</activity>
我的问题
如果上述解决方案允许activity旋转而不用重新创建,那我们为什么还要担心这个问题呢?我们为什么要关心架构组件之类的东西?
谢谢。
编辑
我将编辑问题背后的想法,以便未来的观众理解我的意思。
如果我确实在我的所有活动中都使用了上述内容,那么我是否应该期望一切都能克服屏幕方向的变化(例如:从纵向切换到横向,反之亦然)。
示例:
我每次到达列表顶部时都会对项目列表进行分页,然后突然变成横向...这是否意味着在清单中添加以上内容不会将我的列表重新启动到默认项目(所以我必须重新分页)。
- 您可能需要根据 运行 您的应用程序所在设备的方向和屏幕尺寸显示不同的布局。
- 您可能需要根据自己的需要重新创建 activity,以便您可以根据屏幕尺寸重新组织屏幕中显示的数据。
- 如果您的应用程序只显示一种布局而不考虑屏幕旋转,您可以只输入
android:screenOrientation="portrait"
或android:screenOrientation="landscape"
来摆脱您处理屏幕更改的情况方向。
还有其他用例需要处理屏幕的方向。