Ios UIPopoverController presentPopoverFromRect未正确显示
我正在加载显示相机视图的弹出视图。任何东西都可以工作,但是它不能在iPad上玩比扑克牌大的游戏。无论我做什么,我都不能调整它的大小,只能改变它的位置 这是我使用的代码Ios UIPopoverController presentPopoverFromRect未正确显示,ios,objective-c,uipopovercontroller,Ios,Objective C,Uipopovercontroller,我正在加载显示相机视图的弹出视图。任何东西都可以工作,但是它不能在iPad上玩比扑克牌大的游戏。无论我做什么,我都不能调整它的大小,只能改变它的位置 这是我使用的代码 [self.popOver presentPopoverFromRect:CGRectMake(44, 6, 111, 111) inView:self.view permittedArrowDirections:UIPopoverArrowDirectionUp animated:YES]; 我如何调整尺寸 更新 我的整个方法
[self.popOver presentPopoverFromRect:CGRectMake(44, 6, 111, 111) inView:self.view permittedArrowDirections:UIPopoverArrowDirectionUp animated:YES];
我如何调整尺寸
更新
我的整个方法就是这样的:
- (void) cameraButtonSelected
{
// create picker
UIImagePickerController *picker = [[UIImagePickerController alloc] init];
picker.delegate = self;
picker.allowsEditing = YES;
picker.sourceType = UIImagePickerControllerSourceTypeCamera;
picker.preferredContentSize = CGSizeMake(400.0, 400.0);
if (picker.sourceType == UIImagePickerControllerSourceTypeCamera) {
CGFloat scaleFactor=1.3f;
picker.cameraViewTransform = CGAffineTransformScale(CGAffineTransformMakeRotation(M_PI * -90 / 180.0), scaleFactor, scaleFactor);
}
// create popover
self.popOver = [[UIPopoverController alloc] initWithContentViewController:picker];
[self.popOver presentPopoverFromRect:CGRectMake(44, 6, 111, 111) inView:self.view permittedArrowDirections:UIPopoverArrowDirectionUp animated:YES];
}
尝试将此属性设置为popover中包含的控制器
someViewController.contentSizeForViewInPopover = CGSizeMake(200.0, 200.0)
试用
preferredContentSize
财产
很抱歉,我身上没有mac电脑,无法进行检查您应该尝试在ViewWillDisplay中设置大小:
- (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
self.popover.preferredContentSize = ...
}
没有任何东西对我有效,因此我在显示popoverController后调整了它的大小,如下所示:
[popoverController presentPopoverFromRect:cell.mediaComment.frame
inView:cell
permittedArrowDirections:UIPopoverArrowDirectionRight
animated:YES];
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.05 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
popoverController.contentViewController.preferredContentSize = REQUIRED_RECT.size;
popoverView.frame = REQUIRED_RECT;
});
我已经更新了我的代码。。我试着用你给我的那一行代码,但没用。。您能检查一下我是否正确使用了它吗?是的,我使用了preferredContentSize,因为您建议的第一个已被弃用。所以我仍然站在同样的立场上,这个观点是Sitl行为怪异。