我有许多在iPad上有弹出窗口的应用程序,当点击按钮时,会出现一个弹出框,调整大小并显示。
由于使用iOS7和xcode 5,当在模拟器中运行时,这不再有效,所有发生的事情都是灰色,就像装载但没有正确显示的东西一样。
这在iOS6及以下版本上运行良好,但iOS7上的功能不再适用!
以下代码,请帮忙!
在我的popover .m文件中
- (void)awakeFromNib
{
self.contentSizeForViewInPopover = CGSizeMake(450, 90);
[super awakeFromNib];
}
在我的mainviewcontroller .m文件中:
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
//Eraser Popover controls
if ([[segue identifier] isEqualToString:@"showAlternate"]) {
[[segue destinationViewController] setDelegate:self];
if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad) {
UIPopoverController *popoverController = [(UIStoryboardPopoverSegue *)segue popoverController];
self.EraserPopoverController = popoverController;
popoverController.delegate = self;
}
}
答案 0 :(得分:3)
确定发现问题......这需要多年!!你只需要在你的segue中添加一行代码来调用popover视图到按钮
[self.YourpopoverController presentPopoverFromRect:YourButtonName.frame inView:self.view permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];
就是这样!!
我生命中的2个小时我永远不会回来哈哈
答案 1 :(得分:0)
yup in xcode 6你的代码效果很好。 只需要为.m文件中的按钮名称添加iboulets按钮,这就是你所做的一切,这是一个很好的解决方案,谢谢