我正在将一个iOS7.1 iPad应用程序迁移到iOS8。我刚刚下载了Xcode 6 Beta,并在模拟器上运行了应用程序。我注意到的第一件事是在iOS7.1中工作得很好的爆米花不再工作了。我创造波波夫的方式是:
// the popover controller
UIPopoverController *popOverController;
// the content to be shown in the popover
DropdownViewController dropdownVC = [self.navigationController.storyboard instantiateViewControllerWithIdentifier:@"DropdownViewController"];
// initialize popover
popOverController = [[UIPopoverController alloc] initWithContentViewController:dropdownVC];
// set delegate
dropdownPopOverController.delegate = self;
// set content size
[popOverController setPopoverContentSize:CGSizeMake(SIZE_POPOVER_WIDTH, SIZE_POPOVER_HEIGHT)];
// set the frame
CGRect frame = button.frame; // determine frame
// present popover
[popOverController presentPopoverFromRect:frame
inView:self.view
permittedArrowDirections:UIPopoverArrowDirectionLeft
animated:YES];
有没有人遇到过类似的问题?是否必须在iOS8中以另一种方式显示弹出框。谢谢你的意见。
发布于 2014-09-08 09:19:59
因此,我想出了如何在iOS8中显示弹出窗口:
在iOS7.1中,我使用以下方法控制popover内容的大小
// set content size
[popOverController setPopoverContentSize:CGSizeMake(SIZE_POPOVER_WIDTH, SIZE_POPOVER_HEIGHT)];
在iOS8中,我将其更改为使用setPreferredContentSize属性设置嵌入在popover视图中的视图的内容大小,如下所示:
dropdownVC.preferredContentSize = CGSizeMake(SIZE_POPOVER_WIDTH, SIZE_POPOVER_HEIGHT);
在进行此更改后,将显示具有正确计算高度的弹出窗口。
https://stackoverflow.com/questions/25729019
复制相似问题