Caused by: java.lang.IllegalStateException: Only fullscreen opaque activities can request orientatio

博客主要讲述了Android 8.0(API=26)适配时遇到的问题,给出了两种解决方法,可按需选择或一起使用。问题涉及横屏方向,解决方法一是去掉android:screenOrientation,二是将android:windowIsTranslucent改为false,若需透明设置可加android:windowDisablePreview =true。
  • Back traces starts.
  • java.lang.RuntimeException: Unable to start activity ComponentInfo{com.vlion.xuehua/com.vlion.xuehua.activity.SplashActivity}: java.lang.IllegalStateException: Only fullscreen opaque activities can request orientation
  •     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3303)
  •     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3411)
  •     at android.app.ActivityThread.-wrap12(Unknown Source:0)
  •     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1994)
  •     at android.os.Handler.dispatchMessage(Handler.java:108)
  •     at android.os.Looper.loop(Looper.java:166)
  •     at android.app.ActivityThread.main(ActivityThread.java:7529)
  •     at java.lang.reflect.Method.invoke(Native Method)
  •     at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:245)
  •     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:921)
  • Caused by: java.lang.IllegalStateException: Only fullscreen opaque activities can request orientation
  •     at android.app.Activity.onCreate(Activity.java:1081)
  •     at androidx.core.app.ComponentActivity.onCreate(ComponentActivity.java:85)
  •     at androidx.activity.ComponentActivity.onCreate(ComponentActivity.java:154)
  •     at androidx.fragment.app.FragmentActivity.onCreate(FragmentActivity.java:312)
  •     at androidx.appcompat.app.AppCompatActivity.onCreate(AppCompatActivity.java:115)
  •     at com.vlion.xuehua.activity.BaseActivity.onCreate(BaseActivity.java:76)
  •     at com.vlion.xuehua.activity.SplashActivity.onCreate(Native Method)
  •     at android.app.Activity.performCreate(Activity.java:7383)
  •     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1218)
  •     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3256)
  •     ... 9 more
  • Back traces ends.

这个问题是Android 版本的适配问题;

android 8.0 (API=26) 适配遇到的两个问题

解决方法:有两种,根据需求选择其一,或者两个一起用也行

(横屏方向问题)

(1)去掉android:screenOrientation;

(主题 样式)
(2)android:windowIsTranslucent 改为false; 如果需要透明的设置加上android:windowDisablePreview =true; 

在项目res目录下创建values-v26/styles.xml;

<?xml version="1.0" encoding="utf-8"?>
<resources>

    <style name="AppTheme.Splash" parent="AppTheme">
        <item name="android:windowActionBar">false</item>
        <item name="android:windowNoTitle">true</item>
        <item name="android:windowFullscreen">true</item>
      
        <!-- 适配android手机系统8.0(api26),Only fullscreen opaque activities can request orientation -->
        <!--用背景图消除启动白屏-->
        <item name="android:windowBackground">@mipmap/qhao</item>
        <item name="android:windowIsTranslucent">false</item>
        <item name="android:windowDisablePreview">true</item>
    </style>
</resources>
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值