大家都说UIPopoverController在iOS 8上工作。
但是如果我在iPhone模拟器上测试我的应用程序,它就会崩溃,并记录下来:
由于“NSInvalidArgumentException”异常终止应用程序,原因:'-UIPopoverController initWithContentViewController:未在UIUserInterfaceIdiomPad下运行时调用。‘
这段代码在iPad模拟器上工作得很好。
我的Development Target设置为8.4
UIViewController* viewController = [[UIViewController alloc] initWithNibName:@"StyleMenu" bundle:nil];
self.stylePopover = [[UIPopoverController alloc] initWithContentViewController:viewController];
self.stylePopover.popoverContentSize = CGSizeMake(250,200);
[self.stylePopover presentPopoverFromBarButtonItem:styleBarButton
permittedArrowDirections:UIPopoverArrowDirectionUp
animated:YES];任何帮助都将不胜感激。
发布于 2015-09-26 09:02:08
UIPopoverController在iPhone上不可用。使用您的popoverPresentationController的新viewController属性
MYViewController * myViewController = [[MYViewController alloc] init];
myViewController.modalPresentationStyle = UIModalPresentationPopover;
myViewController.popoverPresentationController.sourceView = button;
myViewController.popoverPresentationController.sourceRect = button.bounds;
[self presentViewController: myViewController animated: YES completion: nil];发布于 2015-09-26 09:02:32
不幸的是,根据苹果的文档,UIPopoverController是iPads专用的
Popover控制器只适用于iPad设备。试图在其他设备上创建一个设备会导致异常。
也可能是这个问题的重复?UIPopoverController对iphone不起作用?
https://stackoverflow.com/questions/32795382
复制相似问题