【问题标题】:UI not responding when popover is presented出现弹出框时 UI 没有响应
【发布时间】:2014-11-27 09:18:33
【问题描述】:
我有 2 个按钮,例如 button1 和 button2。当我们点击button1 时,将显示popover。当popover 出现时,如果我们点击button2,它不会响应点击动作,而是popover 将被关闭。我需要的是,当我们点击button2 时,我需要关闭弹出窗口并且还应该执行button2 的操作。我怎么能同时得到这个。请给我一些建议。提前致谢。
【问题讨论】:
标签:
ios
iphone
uipopovercontroller
uiresponder
【解决方案1】:
根据 UIPopoverController 的默认行为,当用户在弹出框外点击时,它将被关闭。以下是 Apple 文档中的注释:
UIPopoverController 类用于管理弹出框中内容的呈现。您使用弹出框来临时呈现信息。弹出框内容叠加在现有内容之上,背景自动变暗。弹出框一直可见,直到用户在弹出框窗口之外点击或您明确关闭它。 Popover 控制器专用于 iPad 设备。尝试在其他设备上创建一个会导致异常。
如果您想在点击按钮 2 时执行任何操作,最简单的方法是将按钮 2 移动到弹出框内容的顶部。这样,您可以在用户点击 Button 2 时显式关闭弹出框,并在那里执行您自己的自定义操作。