解决方案1:在Androidmanifest.xml的activity标签中加入android:screenOrientation=
"portrait",能够屏蔽横屏
java
<activity android:name=".MainActivity" android:screenOrientation="portrait" > </activity>
screenOrientation有以下选项:android
1.unspecified 默认值,由系统判断状态自动切换字体
2.landscape 横屏spa
3. portrait 竖屏code
4.user 用户当前设置的orientation值xml
5. behind 下一个要显示的Activity的orientation值blog
6. sensor 使用传感器 传感器的方向生命周期
7. nosensor 不使用传感器 基本等同于unspecified事件
解决方案2:在Androidmanifest.xml的activity标签中加入android:configChanges="orientation|keyboardHidden|screenSize"ci
<activity android:name=".MainActivity" android:configChanges="orientation|keyboardHidden|screenSize" > </activity>
configChanges属性能够设置多个值,中间使用竖线分割;
1. orientation 屏幕在纵向和横向间旋转
2.keyboardHidden 键盘显示或隐藏
3.screenSize 屏幕大小改变了
4.fontScale 用户变动了首选的字体大小
5.locale 用户选择了不一样的语言设定
6.keyboard 键盘类型变动,例如手机从12键盘切换到全键盘 7.touchscreen或navigation 键盘或导航方式变化,通常不会发生这样的事件
以前网上查到不少都是说设置了“orientation“和”keyboardHidden”属性,可是效果并无用,须要增长设置screenSize三个值才行。
若是只设置”orientation|screenSize”,会发生竖屏变横屏生命周期会有先销毁后从新onCreate,若是是横屏变竖屏生命周期方法不会被回调!