当外部攻丝时,防止弹出消失(Swift)

问题描述:

我试图防止当用户在弹出窗口之外轻击时弹出窗口被解除。我似乎还有其他问题/答案,他们似乎都建议使用modalInPopover作为视图。正如我所看到的那样,我已经在viewDidAppear中做了这个。我有文本字段以及按钮,根据下拉菜单中的选择填写标签。在输入任何信息之前,它可以正常工作,并且在外部点击时弹出窗口不会被解除。它也适用于在文本字段中输入文本的情况。但是,一旦我点击其中一个按钮后从下拉菜单中进行选择,弹出窗口将会在接触到其外部消息之后立即消失。当外部攻丝时,防止弹出消失(Swift)

有没有其他的建议,为什么这可能是?它可能与在文本字段上调用resignFirstResponder有关吗?

在迅速3,iOS的10

实施UIPopoverPresentationControllerDelegate后,以下功能似乎这样的伎俩。

func popoverPresentationControllerShouldDismissPopover(_ popoverPresentationController: UIPopoverPresentationController) -> Bool { 
    return false 
} 

我希望这有助于如果有人仍在寻找解决方案。

您可以实现UIPopoverControllerDelegate

func popoverControllerShouldDismissPopover(popoverController: UIPopoverController) -> Bool { 
    //return true when you need 
    return false 
} 

这在iOS的9.0过时,但如果你有支持iOS 8的一个项目,你必须使用它。

让我知道它是否适合你

+0

非常感谢你的建议,但不幸的是,它不适合我。你会碰巧知道一种与iOS 9兼容的方式吗? – mhunt2015