如何解决iOS如何在每个UIViewController上启用和禁用旋转?
我有答案。在上AppDelegate
,如果您旋转设备,按下ViewController等,则始终调用此函数
更新
func application(_ application: UIApplication, supportedInterfaceOrientationsFor window: UIWindow?) -> UIInterfaceOrientationMask
{
return self.restrictRotation
}
self.restrictRotation
是自定义参数。
在Appdelegate中:
var restrictRotation:UIInterfaceOrientationMask = .portrait
在ViewController中:
调用方法ViewDidLoad或viewWillAppear时。我们将这样更改:
(UIApplication.shared.delegate as! AppDelegate).restrictRotation = .all
然后将在AppDelegate上调用此方法。
func application(_ application: UIApplication, supportedInterfaceOrientationsFor window: UIWindow?) -> UIInterfaceOrientationMask
解决方法
我有一个UIViewController,我想在不同情况下禁用或启用屏幕旋转
例:
if flag {
rotateDevice = false
}
else {
rotateDevice = true
}
我怎样才能做到这一点?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。