我目前正在使用Xcode 6(Beta 6)测试我的应用程序.UIActivityViewController可与iPhone设备和模拟器配合使用,但与iPad模拟器和设备(iOS 8)崩溃并带有以下日志
Terminating app due to uncaught exception 'NSGenericException',
reason: 'UIPopoverPresentationController
(<_UIAlertControllerActionSheetRegularPresentationController: 0x7fc7a874bd90>)
should have a non-nil sourceView or barButtonItem set before the presentation occurs.
Run Code Online (Sandbox Code Playgroud)
我正在为iOS 7和iOS 8使用以下iPhone和iPad代码
NSData *myData = [NSData dataWithContentsOfFile:_filename];
NSArray *activityItems = [NSArray arrayWithObjects:myData, nil];
UIActivityViewController *activityViewController = [[UIActivityViewController alloc] initWithActivityItems:nil applicationActivities:nil];
activityViewController.excludedActivityTypes = @[UIActivityTypeCopyToPasteboard];
[self presentViewController:activityViewController animated:YES completion:nil];
Run Code Online (Sandbox Code Playgroud)
我也得到了一个类似的崩溃我的其他应用程序.你能指导我吗?iOS 8中的UIActivityViewController有什么变化吗?我查了但是我没有找到任何关于此的内容
在iOS 8.0中,Apple引入了UIAlertController来取代UIActionSheet.不幸的是,Apple没有添加任何有关如何呈现它的信息.我在hayaGeek的博客上找到了一个关于它的条目,然而,它似乎不适用于iPad.视图完全错位:
放错了地方:

正确:

我使用以下代码在界面上显示它:
let alert = UIAlertController()
// setting buttons
self.presentModalViewController(alert, animated: true)
Run Code Online (Sandbox Code Playgroud)
还有其他方法可以将它添加到iPad吗?或者苹果只是忘了iPad,还是没有实现?