如何检查Unity中Android设备的自动旋转方向

本文关键字:方向 旋转 Android 何检查 检查 Unity | 更新日期: 2023-09-27 17:50:15

我正在为android创建一个简单的插件。我想只用c#在Unity端设置方向。

我正在使用这个代码检查屏幕的方向。

if (Screen.orientation == ScreenOrientation.Portrait) {
// portrait
}
else
{
// landscape
}

但是我正在寻找的代码中缺少一些东西。因为也有自动旋转模式。我无法验证这种情况。谁能帮我检查一下 AutoRotation 模式通过Unity for Android设备。

谢谢,

如何检查Unity中Android设备的自动旋转方向

if (Screen.orientation == ScreenOrientation.Portrait) {
// Portrait
}
else if (Screen.orientation == ScreenOrientation.PortraitUpsideDown)
{
// Portrait upside down
}else if (Screen.orientation == ScreenOrientation.LandscapeLeft)
{
// Landscape Left
}else if (Screen.orientation == ScreenOrientation.LandscapeRight)
{
// Landscape Right
}else if (Screen.orientation == ScreenOrientation.AutoRotation)
{
// AutoRotation
}

如果你不关心竖屏,左右横屏,你可以直接写

    if (Screen.orientation == ScreenOrientation.Portrait || Screen.orientation == ScreenOrientation.PortraitUpsideDown) {
    // Portrait
    }else if (Screen.orientation == ScreenOrientation.LandscapeLeft || Screen.orientation == ScreenOrientation.LandscapeRight)
    {
    // Landscape
    }else if (Screen.orientation == ScreenOrientation.AutoRotation)
    {
    // AutoRotation
    }

包含自动旋转检查,并且您的代码也固定为检测其他旋转。欲了解更多信息,请阅读Unity文档。http://docs.unity3d.com/ScriptReference/ScreenOrientation.html

可以随意使用Input.deviceOrientation来检查设备的方向。

在记住之前状态的同时,你可以自己触发旋转事件