我有一个具有一个活动android:windowIsTranslucent设置true,并android:windowBackground设置成半透明的背景。我只是将目标更改为,并将sdk版本编译为27,现在启动此活动时出现异常:
android:windowIsTranslucent
true
android:windowBackground
java.lang.IllegalStateException: Only fullscreen opaque activities can request orientation
由于这是一个新的SDK,因此尚无任何在线信息(它似乎是由以下代码行导致的:https://android.googlesource.com/platform/frameworks/base.git/+/master/核心/java/android/app/Activity.java#987)
有什么办法可以解决这个问题?如果我android:screenOrientation="portrait"从清单中取出该应用程序,则该应用程序不会崩溃,但我希望能够保持这种状态。
android:screenOrientation="portrait"
我也面临同样的问题。就像其他人所说的,如果我删除了 android:screenOrientation =“ portrait” 或用 android:screenOrientation =“ unspecified” 覆盖了它,那么该异常就消失了。并且似乎前活动的方向遵循后活动的方向。
我想过这个问题。如果前面的活动是透明的,后面的活动的方向不同,则显示将变得奇怪。因此,我可以理解为什么添加了此检查逻辑。但是,我想知道为什么在Developer Preview 8.0.0中没有发生此问题。