Android 8.0 Caused by: java.lang.IllegalStateException: Only fullscreen opaque activities can req...

出现问题:Android 8.0 Caused by: java.lang.IllegalStateException: Only fullscreen opaque activities can request orientation

出现原因是: 同时设置了

  1. AndroidManifest.xml中,Activity属性同时设置了android:screenOrientation=""属性
  2. android:theme=""中 <item name="android:windowIsTranslucent">true</item>

android:screenOrientation=""的所有属性:

unspecified,默认值,由系统决定,不同手机可能不一致
landscape,强制横屏显示
portrait,强制竖屏显
behind,与前一个activity方向相同
sensor,根据物理传感器方向转动,用户90度、180度、270度旋转手机方向,activity都更着变化
sensorLandscape,横屏旋转,一般横屏游戏会这样设置
sensorPortrait,竖屏旋转
nosensor,旋转设备时候,界面不会跟着旋转。初始化界面方向由系统控制
user,用户当前设置的方向

解决办法:

    1. 删除AndroidManifest.xml中相应Activity的 android:screenOrientation=""属性;
    1. 或者删除相应Activity的android:theme=""属性中对应style中
      <item name="android:windowIsTranslucent">true</item>属性, 改为false也行。

推荐阅读更多精彩内容