Ich versuche eine "Öffnen in ..." -Funktion mit UIDocumentInteractionController()
Verwenden Sie eine UIwebview
.Wie fügen Sie einer benutzerdefinierten UIWebview eine "Open in .." -Funktion hinzu?
Mein Ziel ist es, Benutzer in der Lage zu sein, eine Website zu navigieren und die Schaltfläche "Öffnen in ..." zu drücken, um ein PDF/DOCX von einer Website zu einer anderen App wie Noteability zu verschieben.
Was ich in meinem Code tun möchte, ist das Herunterladen der Seite, auf der der Benutzer gerade ist und dann versuchen, diese Datei in der UIDocumentInteractionController()
zu öffnen, um in eine andere App geschoben werden.
Es scheint nicht zu funktionieren, und ich brauche Hilfe herauszufinden, was ich tun muss.
Hier ist der Code, den ich verwende.
class DetailViewController: UIViewController, UIWebViewDelegate, UITextFieldDelegate, UIPopoverPresentationControllerDelegate, SFSafariViewControllerDelegate {
@IBOutlet weak var WebSiteView: UIWebView!
...
var docController: UIDocumentInteractionController!
...
@IBAction func OpenInPressed(sender: AnyObject) {
let yourURL = WebSiteView.request?.URL!
let urlRequest = NSURLRequest(URL: yourURL!)
let theData = try? NSURLConnection.sendSynchronousRequest(urlRequest, returningResponse: nil)
var docURL = (NSFileManager.defaultManager().URLsForDirectory(.DocumentDirectory, inDomains: .UserDomainMask)).last!
docURL = docURL.URLByAppendingPathComponent("myFileName.pdf")
theData?.writeToURL(docURL, atomically: true)
docController = UIDocumentInteractionController(URL: docURL)
docController.presentOptionsMenuFromRect(sender.frame, inView:self.view, animated:true)
}
}