保持popovercontentsize对于navigationcontroller中的所有视图保持不变

时间:2012-10-10 06:06:07

标签: ios uipopovercontroller

当我将UINavigationController传递给UIPopOver并设置其popOverContentSize属性时,它仅对第一个视图有效。当我导航到下一个视图时,popOverContent大小再次扩展为完整视图,这是不需要的。如何为导航控制器中的所有视图限制popOver的常量大小?

- (void)selectTextStyle:(id)sender {
DJTextStyleMasterViewController *textStyle = [[DJTextStyleMasterViewController alloc] init];
self.navController = [[UINavigationController alloc] initWithRootViewController:textStyle];

UIPopoverController *popOver = [[UIPopoverController alloc] 
                                initWithContentViewController:self.navController];
[popOver setDelegate:self];
[popOver setPopoverContentSize:CGSizeMake(320, 400)];
[popOver presentPopoverFromBarButtonItem:self.textStyleButton permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];

[textStyle release];
}

1 个答案:

答案 0 :(得分:2)

在弹出控制器的第一个视图控制器中,您可以使用此方法:

[self setContentSizeForViewInPopover:CGSizeMake(320, 400)];

然后,对于下一个视图控制器,弹出窗口的视图(如果未手动修改)也应该相同。