1

我正在尝试使用 FPPopover 打开通知视图,它在应用程序上的 iOS 5 上工作,但在 iOS 6 上不显示。但是,如果我将相同的代码用于不同的项目,它确实显示适用于 iOS 5 和 6

这就是我在两个项目中所做的。

- (IBAction)NotificationButtonPressed:(id)sender {
    [self openNotificationsPopOver:sender];
}

- (void)openNotificationsPopOver:(id)sender {
    [self setNotificationCount:0];

    NotificationViewController *vc = [[UIStoryboard storyboardWithName:@"Notification" bundle:[NSBundle mainBundle]] instantiateViewControllerWithIdentifier:@"NotificationViewController"];

//    NotificationViewController *vc = [[NotificationViewController alloc]init];
//    [vc setParentViewController:self];


    FPPopoverController *popover = [[FPPopoverController alloc] initWithViewController:vc];

    //sender is the UIButton view
    [popover presentPopoverFromView:sender];

    //popover.arrowDirection = FPPopoverArrowDirectionAny;
    popover.tint = FPPopoverDefaultTint;

    popover.contentSize = CGSizeMake(200, 250);

    popover.arrowDirection = FPPopoverArrowDirectionAny;
    NSLog(@"Present popover");
    //sender is the UIButton view
    [popover presentPopoverFromView:sender];
//    [popover presentPopoverFromPoint:CGPointMake(160, 0)];

//sender is the UIButton view
//    [popover presentPopoverFromView:self.navigationController.navigationBar];
}

我也尝试使用为其注释掉的行...所有方法都适用于单独的项目(iOS 5 和 6),但在主项目上它仅适用于 iOS 5

还尝试删除框架并再次添加它们。用 xCode 4.3 开始这个项目(不知道是否重要)。

参考:https ://github.com/50pixels/FPPopover

4

1 回答 1

0

您需要确保在分配之前实例化“窗口”并显示弹出框。

于 2013-03-24T01:36:53.453 回答