我想要一个模态窗口,我使用PresentModalViewController并将ModalPresentationStyle设置为UIModalPresentationStyle.FormSheet。

但是,如何将窗口显示为UIpopover这样的弹出层,它使用户只需触摸弹出窗口区域的外部即可关闭弹出窗口。

顺便说一句,如何修改UIpopover暗框并将UIPopoverArrowDirection设置为空?

最佳答案

我这样做的方法是从父视图控制器类中的UIPopoverControllerDelegate实现popoverControllerShouldDismissPopover方法,并仅返回NO。这将防止当用户在弹出窗口以外的地方点击时弹出窗口消失。

#pragma mark - UIPopoverControllerDelegate

- (BOOL)popoverControllerShouldDismissPopover:(UIPopoverController *)popoverController
{
    return NO;
}

09-11 19:09