通过UIModalPresentationFormSheet的UIImagePickerController:ipad

时间:2012-07-19 09:44:31

标签: objective-c ipad uimodalpresentationstyle

我正在使用UIModalPresentationFormSheet并打开UIImagePickerController(或任何UIViewController),但在解除UIImagePickerController或任何其他控制器时,UIModalPresentationFormSheet的大小会发生变化

modalViewController *changeProfilePicture = [[ModalViewController alloc] init];
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:modalViewController];
navigationController.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
navigationController.modalPresentationStyle = UIModalPresentationFormSheet;
[mainViewController presentModalViewController:navigationController animated:YES];
navigationController.view.superview.frame = CGRectMake((CGRectGetWidth(mainViewController.view.bounds)-300)/2, (CGRectGetHeight(mainViewController.view.bounds)-300)/2, 300, 300);

在modalViewController中,我打开UIImagePickerController以在FullScreen模式下选择图像。然后modalViewController的帧大小几乎变成两次。

在popoverview中打开UIImagePickerController时可以。

但是我的要求就像我还需要在FullScreen模式下打开其他一些viewController。

任何想法我们如何维护modalViewController帧大小。

1 个答案:

答案 0 :(得分:0)

我建议使用self.frame获取父视图的帧大小,并将其传输到您遇到问题的UIImagePicker。这应该会缩小规模。