Verwenden von UIActivityViewController und UIActivityItemProvider zum Freigeben von PDF
Ich muss einige andere Dateien unter iOS freigeben / öffnen, z. ein Bild in iCloud oder ein PDF in iBooks. Es gibt einige Beispiele für Text und Bilder, aber nichts für etwas anderes ...
Ich habe mein eigenes @ erstelUIActivityItemProvider
; vereinfachte Version hier:
class MyItemProvider: UIActivityItemProvider {
override func item() -> AnyObject {
self.placeholderItem
}
override func activityViewController(activityViewController: UIActivityViewController, dataTypeIdentifierForActivityType activityType: String?) -> String {
return kUTTypePDF as String
}
func activityViewControllerPlaceholderItem(activityViewController: UIActivityViewController) -> AnyObject {
return self.placeholderItem
}
}
Und teile es mit so etwas wie:
let myPDF = NSData(contentsOfURL: NSBundle.mainBundle().URLForResource("testpdf", withExtension: "pdf")) {
let activityVC = UIActivityViewController(activityItems: [MyItemProvider(placeHolder: myPDF)], applicationActivities: nil)
self.presentViewController(activityVC, animated: true, completion: nil)
Ich erwarte einen geteilten Dialog wie:
Aber alles was ich bekomme ist:
Irgendwelche Vorschläge