3

我想显示一个带有自定义内容大小的弹出框。我可以这样做

UINavigationController* popoverContent = [[UINavigationController alloc] init];


    UIView* popoverView = [[UIView alloc]  initWithFrame:CGRectMake(0, 0, 800, 800)];

    popoverView.backgroundColor = [UIColor blueColor];

    popoverContent.view = popoverView;

    popoverContent.contentSizeForViewInPopover = CGSizeMake(55, 55);
    UIPopoverController *pop = [[UIPopoverController alloc] initWithContentViewController:popoverContent];
    [pop presentPopoverFromRect:CGRectMake(80.0, 210.0, 160.0, 40.0) inView:self.view permittedArrowDirections:UIPopoverArrowDirectionLeft animated:YES];

但如果我将内容更改为:

popoverContent.viewControllers = [NSArray arrayWithObject:myViewController];

popoverContent.contentSizeForViewInPopover = CGSizeMake(55, 55);

大小根本没有变化。

使用导航控制器时如何更改内容大小?谢谢

4

1 回答 1

4

显式更改弹出框大小有效:

 [self.popoverController setPopoverContentSize:myView.size animated:YES];

但我同意这contentSizeForViewInPopover应该有效。无论如何,它不适合我。

于 2011-04-18T09:33:01.623 回答