出于某种原因,使用Swift时,以下代码似乎不适用于iOS 7中的弹出窗口:
self.dismissViewControllerAnimated(true, completion: nil)
没有错误,但是popover并没有被忽视。它在iOS 8中运行良好。我需要在iOS 7中做一些不同的事情吗?
答案 0 :(得分:0)
是的,在iOS8中,popovers被广泛重写为完全成熟的视图控制器。
要在iOS7中解雇,您需要在dismissPopoverAnimated:
实例上调用UIPopoverController
。您可以通过将引用传递给拥有的UIPopoverController到内容视图控制器,从内容控制器执行此操作。
像...
class MyViewController:UIViewController {
var parentPopover:UIPopoverController?
func dismissPopover() {
parentPopover?.dismissPopoverAnimated(true)
}
然后在设置时......
func popoverThatThing() {
let mvc = MyViewController()
let popover = UIPopoverViewController(contentViewController:mvc)
mvc.parentPopover = popover
popover.presentFromWhatever...
}
甚至更容易,不支持iOS7