我正在使用以下代码以模态方式呈现视图控制器。我已将演示风格更改为" Over current Context"。它在iOS 8上工作正常,但在os<屏幕上显示黑屏8.我知道Over Current Context仅在iOS 8中可用。我的问题是如何在iOS 7中实现这一点。
let vc = self.storyboard.instantiateViewControllerWithIdentifier("markerView") as! MarkerViewController
self.presentViewController(vc, animated: false, completion: nil)
答案 0 :(得分:15)
您必须在iOS 7中使用Current Context
。
要查看iOS版本,您可以使用NSFoundationVersionNumber
。
let iOS7 = floor(NSFoundationVersionNumber) <= floor(NSFoundationVersionNumber_iOS_7_1)
let iOS8 = floor(NSFoundationVersionNumber) > floor(NSFoundationVersionNumber_iOS_7_1)
然后,您可以查看正在运行的版本并使用OverCurrentContext
或CurrentContext
。
if iOS8 {
self.modalPresentationStyle = UIModalPresentationStyle.OverCurrentContext
} else {
self.modalPresentationStyle = UIModalPresentationStyle.CurrentContext
}