什么是UIPopoverController的正确代码

时间:2015-10-31 00:47:03

标签: swift ios9 uipopovercontroller

iOS 9中PopoverController的正确代码是什么,可以为此代码提供正确的代码?

@IBAction func share(sender: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)

    }
}

}

1 个答案:

答案 0 :(得分:1)

你的代码很古老。你应该扔掉所有这些。在iOS 8和iOS 9中,呈现的控制器适应。 UIActivityViewController已经在iPad上自动弹出。只要出示它,就会发生正确的事情。

当然,您必须为其提供sourceViewsourceRect或条形按钮项目来源。否则,你会在iPad上崩溃。但任何 popover的情况都是如此,所以你不能对它感到惊讶。