屏幕方向设置
manifest可以设置activity的screenOrientation,可选值为:
- unSpecified 未指定
- user 根据用户设置决定
- behind 与activity栈中该activity的下一个activity保持一致
- landscape 横屏
- portrait 竖屏
- reverseLandscape 反向横屏,与landscape相反
- reversePortrait 反向竖屏,与portrait相反
- sensorLandscape 横屏,由感应器决定正反向
- sensorPortrait 竖屏,由感应器决定正反向
- sensor 由感应器决定屏幕方向,有些设备不允许四个方向
- fullSensor 允许四个方向,其余与sensor类似
- nonsensor 传感器变化被忽略,其余与unSpecfied类似
屏幕旋转但是不杀死Activity
正常屏幕旋转时会杀死activity,再重新onCreate,如果不希望被杀死可以进行以下配置:
配置screenOrientation = "sensor"
配置configChanges = "orientation|keyboardHidden|screenSize"
activity重写onConfigurationChanged(Configuration newConfig)方法,旋转时会调用此方法,根据newConfig.orientation== Configuration.ORIENTATION_LANDSCAPE判断屏幕方向