[我在MainViewController
内创建了一个弹出框,当它使用UIPopoverPresentationController
触摸某些按钮时,就像在WWDC 2014中所显示的那样,将其设置为代表,如下所示:
MainViewController.swift
class MainViewController : UIViewController, UIPopoverPresentationControllerDelegate {
@IBAction func showPopover(sender: AnyObject) {
var popoverContent = self.storyboard?.instantiateViewControllerWithIdentifier("PopOverViewController") as UIViewController
popoverContent.modalPresentationStyle = UIModalPresentationStyle.Popover
var popover = popoverContent.popoverPresentationController
popoverContent.preferredContentSize = CGSizeMake(250, 419)
popover!.delegate = self
popover!.sourceView = self.view
popover!.sourceRect = CGRectMake(180,85,0,0)
self.presentViewController(popoverContent, animated: true, completion: nil)
}
}
弹出框内部有一个View,当用Tap Gesture Recognizer单击该视图时,我使用模态序列显示LastViewController
,模态序列是通过Interface Builder创建的,而不是通过代码使用动作来呈现另一个LastViewController
一旦LastViewController
被解雇,而我又回到了MainViewController
,弹出框将保持打开状态。
在PopOverController]里面,我仅具有默认代码。
LastViewController.swift
@IBAction func dismissVIew(sender: AnyObject) { self.dismissViewControllerAnimated(true, completion: nil) }
上面的代码用于在触摸内部按钮后关闭LastViewController
。
故事板
<< img src =“ https://image.soinside.com/eyJ1cmwiOiAiaHR0cHM6Ly9pLnN0YWNrLmltZ3VyLmNvbS9QRGZrbi5wbmcifQ==” alt =“在此处输入图像描述”>
一旦看到另一个LastViewController
,或者在应该打开另一个LastViewController
之前,我怎么能关闭弹出框?
提前感谢
[我在MainViewController内创建了一个弹出框,当它使用UIPopoverPresentationController触摸某些按钮时,就像在WWDC 2014中一样,将其设置为委托,在...
我已经通过here回答了相同的问题
在FinalViewController上的按钮操作中,您是否尝试过:
这是我要怎么做。
在视图控制器内部,您可以覆盖viewWillAppear()
弹出框内部有一个View,当使用Tap Gesture Recognizer单击该View时,我会使用模式搜索显示另一个ViewController。
基于@Jageen的回答