UIPopoverController模式问题

时间:2012-04-18 09:30:10

标签: iphone ios uipopovercontroller presentmodalviewcontroller uipopover

enter image description here

我有UIPopoverController

    UINavigationController *navVC = [[[UINavigationController alloc] initWithRootViewController:loginVC] autorelease];

    navVC.modalInPopover = YES;
    navVC.modalPresentationStyle = UIModalPresentationCurrentContext;    


    _popoverLoginVC = [[UIPopoverController alloc] initWithContentViewController:navVC];

当我出现popover

  [self.popoverLoginVC presentPopoverFromRect:centerFrame
                                     inView:self.splitVC.view
                   permittedArrowDirections:0 
                                   animated:YES];

看起来它是模态的(我不能通过点击外面关闭弹出窗口)但其他区域没有变暗。 我玩过modalPresentationStyle没有运气(

请建议

4 个答案:

答案 0 :(得分:0)

这是模态因为你将它设置为模态。

navVC.modalInPopover = YES;

只要删除它,如果我理解正确你应该没事。

答案 1 :(得分:0)

删除行

  

navVC.modalInPopover = YES;

     

navVC.modalPresentationStyle = UIModalPresentationCurrentContext;

答案 2 :(得分:0)

弹出窗口并不意味着(并且不能指定)调暗“背景”视图,即使是以模态方式呈现。

答案 3 :(得分:0)

permittedArrowDirections:0

这不是此参数的有效值,会导致未定义的行为(至少在iOS> = 6中)。您必须指定以下之一:

UIPopoverArrowDirectionUp = 1UL << 0,
UIPopoverArrowDirectionDown = 1UL << 1,
UIPopoverArrowDirectionLeft = 1UL << 2,
UIPopoverArrowDirectionRight = 1UL << 3,
UIPopoverArrowDirectionAny = UIPopoverArrowDirectionUp | UIPopoverArrowDirectionDown | UIPopoverArrowDirectionLeft | UIPopoverArrowDirectionRight,

不幸的是,“没有箭头”不是受支持的选项。 :(