Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xcode 当NSPopover处于非活动状态时,我如何解除它?_Xcode_Swift - Fatal编程技术网

Xcode 当NSPopover处于非活动状态时,我如何解除它?

Xcode 当NSPopover处于非活动状态时,我如何解除它?,xcode,swift,Xcode,Swift,我有一个菜单栏应用程序,当按下状态图标时,它会显示一个nspover。问题是,只有再次单击状态图标,它才会关闭 我希望在单击popover本身之外的任何位置时关闭视图 我尝试将弹出窗口属性行为更改为瞬态,但问题仍然存在 实现这一点的最佳方法是什么?使用UIPopoverController而不是NSPopover,并使用以下方法将其显示在所需的ViewController中 - (void)presentPopoverFromRect:(CGRect)rect inView:(UIVie

我有一个菜单栏应用程序,当按下状态图标时,它会显示一个nspover。问题是,只有再次单击状态图标,它才会关闭

我希望在单击popover本身之外的任何位置时关闭视图

我尝试将弹出窗口属性
行为
更改为
瞬态
,但问题仍然存在


实现这一点的最佳方法是什么?

使用UIPopoverController而不是NSPopover,并使用以下方法将其显示在所需的ViewController中

    - (void)presentPopoverFromRect:(CGRect)rect inView:(UIView *)view permittedArrowDirections:(UIPopoverArrowDirection)arrowDirections animated:(BOOL)animated
因此,如果单击popover之外的任何其他视图,它将自动关闭