尝试打开照片库时,横向定位锁不起作用Swift
我正在制作一个应用程序,允许用户打开照片库以更改图像视图中的图片。无论何时我将方向锁定到横向模式,为了避免严重的限制,应用程序总是将我喜欢的所有内容都放在屏幕上,照片库会尝试以纵向模式打开。为了解决这个问题我做了一个叫的UIImagePickerController + SupportedOrientations新类,并添加尝试打开照片库时,横向定位锁不起作用Swift
extension UIImagePickerController
{
public override func supportedInterfaceOrientations() -> UIInterfaceOrientationMask {
return .Landscape
}
override public func shouldAutorotate() -> Bool { return false }
}
,希望能够阻止这一切。现在,它在横向模式下打开时,我使用的应用程序没有锁定它,但如果我锁定它,我得到以下错误
terminating with uncaught exception of type NSException
它完全支持横向模式。把这个扩展放在某个地方。最好在一个名为的UIImagePickerController + SupportedOrientations.swift
文件extension UIImagePickerController
{
public override func supportedInterfaceOrientations() -> UIInterfaceOrientationMask {
return .Landscape
}
}
这使得所有UIImagePickerControllers在您的应用程序的风景线。您也可以继承,并重写此方法只作一个子类景观能够:
class LandscapePickerController: UIImagePickerController
{
public override func supportedInterfaceOrientations() -> UIInterfaceOrientationMask {
return .Landscape
}
}
最后,支持横向模式,您可以返回
return [.Landscape]
-1此解决方案是以下提供的答案的副本:在Swift 2.0中以横向模式使用UIImagePickerController(http://*.com/questions/33058691/use-uiimagepickercontroller-in-landscape-mode-in-swift-2 -0) – David
它会导致崩溃吗?或只是在你的调试器警告? –
当我试图打开照片库时,它会导致完全崩溃@AKMSalehSultan – zach2161
好吧给一个小时。让我尽快回复你。 –