activityViewController

activityViewController

在iOS 9中,PopoverController的正确代码是什么?



@IBAction功能共享(发送方:UIBarButtonItem){

    let activityViewController = UIActivityViewController (
        activityItems: [(webview.request?.URL!.absoluteString)! as NSString],
        applicationActivities: nil)

    if UIDevice.currentDevice().userInterfaceIdiom == .Pad {
        //iPad

        let activityPopover = UIPopoverController(contentViewController: activityViewController)
        activityPopover.presentPopoverFromBarButtonItem(self.shareButton, permittedArrowDirections: UIPopoverArrowDirection.Any, animated: true)
    }
    else
    {
        //iPhone
        presentViewController(activityViewController, animated: true, completion: nil)

    }
}


}

最佳答案

您的代码是古老的。您应该将所有这些扔掉。在iOS 8和iOS 9中,提供的控制器可以适应。 UIActivityViewController已经自动在iPad上弹出。只要展示它,正确的事情就会发生。

当然,您将必须为其提供sourceViewsourceRect或条形按钮项目源。否则,您将在iPad上崩溃。但是,任何弹出窗口都是这种情况,因此您不会对此感到惊讶。

关于swift - UIPopoverController的正确代码是什么,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33446875/

10-12 05:33