2015-04-09 18 views
5

Tôi đang tạo một chức năng chia sẻ trong trò chơi của mình và tôi có mã và nó hoạt động tốt trên iPhone nhưng khi tôi thử nghiệm trên iPad, khi tôi nhấn vào nút chia sẻ ứng dụng bị treo. Tôi đang sử dụng mã sau đây cho nút chia sẻUIActivityViewController trong Swift Crashes trên iPad

let textToShare = "Check out this website!" 

if let myWebsite = NSURL(string: "http://www.apple.com/") { 
    let objectsToShare = [textToShare, myWebsite] 
    let activityVC = UIActivityViewController(activityItems: objectsToShare, applicationActivities: nil) 
    self.view?.window?.rootViewController?.presentViewController(activityVC, animated: true, completion: nil) 
} 
+0

Không chỉ nói "lỗi ứng dụng". Nó cho bạn biết những thứ quan trọng khi nó bị treo. Nội dung quan trọng nào cho bạn biết? – matt

+0

Cung cấp chi tiết về sự cố. – rmaddy

Trả lời

17

UIActivityViewController's có cửa sổ bật lên không trốngPresentationController khi chạy trên iPad. Vì vậy, hãy thử dưới đây.

if let wPPC = activityVC.popoverPresentationController { 
    wPPC.sourceView = some view 
    // or 
    wPPC.barButtonItem = some bar button item 
} 
presentViewController(activityVC, animated: true, completion: nil) 
+0

cách bạn thay đổi vị trí của Chế độ xem qua trên – Loanb222

+1

Cảm ơn, ".barButtonItem = một số mục nút thanh" thực sự là một cách hay. –

+0

FYI, bạn không cần 'if let' ở đây. Chuỗi tùy chọn sẽ hoạt động. 'activityVC.popoverPresentationController? .barButtonItem = bất cứ điều gì' –

Các vấn đề liên quan