gpt4 book ai didi

ios - UIDevice.currentDevice().beginGenerateDeviceOrientationNotifications() 不起作用

转载 作者:行者123 更新时间:2023-11-30 13:48:14 25 4
gpt4 key购买 nike

我正在尝试使用属性 UIDevice.currentDevice().orientation,所以我有如下内容

UIDevice.currentDevice().beginGeneratingDeviceOrientationNotifications()
var orientation = UIDevice.currentDevice().orientation
switch orientation {
case .Portrait:
print("portrait")
break
case .PortraitUpsideDown: // Device oriented vertically, home button on the top
print("upsidedown")
magneticHeading += 180
magneticHeading = magneticHeading % 360
break
case .LandscapeLeft: // Device oriented horizontally, home button on the right
print("left")
magneticHeading -= 90
magneticHeading = magneticHeading % 360
break
case .LandscapeRight: // Device oriented horizontally, home button on the left
print("right")
magneticHeading += 90
magneticHeading = magneticHeading % 360
break
case .FaceUp: // Device oriented flat, face up
print("up")
break
case .FaceDown: // Device oriented flat, face down
print("down")
break
case .Unknown:
print("unknown")
break
default:
print("default")
}

我浏览了 Stack Overflow 上的很多网页和问题,它们都使用 beginGenerateDeviceOrientationNotifications() 那么它就可以工作。但是,我的代码根本无法工作。在switch语句中,无论我如何转动手机,它总是输入.Portrait。有谁知道为什么吗?

此外,我实际上想要设备的方向,而不是 View Controller 的方向。我需要知道设备是如何保持的,所以我需要使用 currentDevice().orientation

我还尝试过使用以下内容:

var interfaceOrientation = UIApplication.sharedApplication().statusBarOrientation
switch interfaceOrientation {
case .Unknown:
print("1")
case .Portrait:
print("2")
case .PortraitUpsideDown:
print("3")
case .LandscapeLeft:
print("4")
case .LandscapeRight:
print("5")

再说一次,无论我怎么转动手机,始终输入.Portrait

最佳答案

enter image description here

请检查您的 Xcode 目标常规设置

关于ios - UIDevice.currentDevice().beginGenerateDeviceOrientationNotifications() 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34646721/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com