在Swift 2.0中的supportedInterfaceOrientationsForWindow

时间:2015-09-17 15:19:26

标签: swift swift2 appdelegate uiinterfaceorientation

func application(application: UIApplication, supportedInterfaceOrientationsForWindow window: UIWindow?) -> UIInterfaceOrientationMask
{
    return UIInterfaceOrientationMask.Portrait.rawValue.hashValue | UIInterfaceOrientationMask.PortraitUpsideDown.rawValue.hashValue
}

以前在Swift 1.2中工作但是返回行现在抛出了这个错误:

  

二元运算符' |'不能适用于两个   ' UIInterfaceOrientationMask'操作数

我能够使用新类型只使用1个返回值,但是我无法管理我需要的第二个方向。

这'工作'

func application(application: UIApplication, supportedInterfaceOrientationsForWindow window: UIWindow?) -> UIInterfaceOrientationMask
{
  return UIInterfaceOrientationMask.Portrait 
}

但我认为'我需要的是:

func application(application: UIApplication, supportedInterfaceOrientationsForWindow window: UIWindow?) -> UIInterfaceOrientationMask
{
  return UIInterfaceOrientationMask.Portrait | UIInterfaceOrientationMask.PortraitUpsideDown
}

它说的与我上面发布的错误相同。

您知道如何在Swift 2.0的AppDelegate中将方向正确设置为2个或更多值吗?

1 个答案:

答案 0 :(得分:6)

尝试新语法:

func application(application: UIApplication, supportedInterfaceOrientationsForWindow window: UIWindow?) -> UIInterfaceOrientationMask {
  return [.Portrait, .PortraitUpsideDown]
}