有业务需要,上午把项目升级到8.0,心情美美的,然后一运行app,立刻崩溃,一脸懵逼,一看报错日志:
Only fullscreen opaque activities can request orientation
经过度娘知道,应该是API 27的新规矩:只有占据整个屏幕的 Activity 才可以设置横竖屏,半透明/对话框等不可设置横竖屏。
好吧~
找到问题所在,自然是解决问题,
解决办法一:
找到你设置透明的Activity,然后在他的theme中将android:windowIsTranslucent
改为false
<item name="android:windowIsTranslucent">false</item>
再加入
<item name="android:windowDisablePreview">true</item>
一运行,然并卵。
解决方法二:
既然是api规定,那就不设置横竖屏不就行了,
所以直接删掉manifest文件里Activity的 android:screenOrientation=“portrait” 就行了,相信我,开屏就那么一瞬间,没人会发现它还可以横屏的。
一运行,问题解决,OK,开心。