gpt4 book ai didi

ios - 尝试通过点击 UIBarButtonItem 进行共享时 iPad 崩溃

转载 作者:行者123 更新时间:2023-11-30 13:07:15 25 4
gpt4 key购买 nike

我正在使用 Xcode 和 Swift 开发 iOS 应用程序。

我使用此代码通过点击 UIButton 来共享定义的字符串:

@IBAction func shareApp(sender: UIButton) {
let textToShare = "Look at this:"

if let myWebsite = NSURL(string: "www.example.con") {
let objectsToShare = [textToShare, myWebsite]
let activityVC = UIActivityViewController(activityItems: objectsToShare, applicationActivities: nil)

if #available(iOS 8.0, *) {
activityVC.popoverPresentationController?.sourceView = sender
} else {
// Fallback on earlier versions
}
self.presentViewController(activityVC, animated: true, completion: nil)
}
}

这在 iPhone 和 iPad 上运行得非常好。

现在,我想做同样的事情,但使用 UIBarButtonItem 而不是 UIButton。当然,此代码不适用于 UIBarButtonItem。

更改@IBAction func shareApp(sender: AnyObject) {activityVC.popoverPresentationController?.sourceView = sender as?一旦我点击 BarButtonItem,UIView 就会导致 iPad 崩溃。

有人知道怎么解决吗?

最佳答案

对于 iPad,除了 popoverPresentationController 的源 View 之外,您还需要添加 sourceRect。请尝试以下操作:

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

if let fromView = sender as? UIView {
youActivityVC.popoverPresentationController.sourceView = fromView

youActivityVC.popoverPresentationController.sourceRect = fromView.frame
}
}

关于ios - 尝试通过点击 UIBarButtonItem 进行共享时 iPad 崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39189902/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com