为什么当用户在横向和纵向之间切换时 screenSize 会发生变化?
Why screenSize changes when the user switches between landscape and portrait?
根据 Android 指南,当用户旋转设备时 "screenSize" 会发生变化,为什么 "orientation" 值不足以表明这一点?
您可以在 Manifest
中解决这个问题
只需添加这一行
android:configChanges="orientation|screenSize"
如果您为横向创建不同的 XML,请不要为 activity 使用 android:configChanges="orientation|screenSize"
标签。
screenSize
配置变化并不意味着物理屏幕发生了变化,而是意味着逻辑屏幕的尺寸发生了变化。例如,DisplayMetrics.widthPixels
值在从纵向旋转到横向后会大得多。
需要考虑的一件事是 screenSize
配置更改类型和 最小宽度 和 可用宽度 资源限定符两者均在 API 级别 13 中添加。旋转设备时屏幕的可用宽度会发生变化,因此将其标记为 "screen size" 更改是有道理的。
根据 Android 指南,当用户旋转设备时 "screenSize" 会发生变化,为什么 "orientation" 值不足以表明这一点?
您可以在 Manifest
只需添加这一行
android:configChanges="orientation|screenSize"
如果您为横向创建不同的 XML,请不要为 activity 使用 android:configChanges="orientation|screenSize"
标签。
screenSize
配置变化并不意味着物理屏幕发生了变化,而是意味着逻辑屏幕的尺寸发生了变化。例如,DisplayMetrics.widthPixels
值在从纵向旋转到横向后会大得多。
需要考虑的一件事是 screenSize
配置更改类型和 最小宽度 和 可用宽度 资源限定符两者均在 API 级别 13 中添加。旋转设备时屏幕的可用宽度会发生变化,因此将其标记为 "screen size" 更改是有道理的。