Frage

Ich versuche, eine WebArchive von einem WebView zu erstellen. Ich habe es funktioniert, aber ich habe ein Problem gefunden, wenn ich mit Editiermaterial versuchen und zu arbeiten. Das ist, was ich derzeit tue:

[webView setEditable:YES];
WebDataSource *dataSource = [[webView mainFrame] dataSource];

WebArchive *archive = [[WebArchive alloc]
        initWithMainResource:[dataSource mainResource]
        subresources:nil
        subframeArchives:nil];

[[archive data] writeToFile:destinationPath atomically:YES];
[[webView mainFrame]
 loadRequest:[NSURLRequest
     requestWithURL:
     [NSURL fileURLWithPath:destinationPath]
     ]];

Alle Änderungen ich auf den Inhalt in der WebView mache nicht in der WebArchive gespeichert bekommen. Muss ich meine Änderungen zurück in die Original-Datei, um diese zu Arbeit verpflichten? Ich mag es basierend auf den Inhalt zu speichern, die in der WebView ist. Jede Hilfe wäre sehr geschätzt. Dank!

War es hilfreich?

Lösung

Nach einer Weile graben konnte ich die Antwort auf meine eigene Frage, um herauszufinden. Hier ist, wie ich es getan hätte:

WebResource *dataSource = [[[[webView mainFrame] DOMDocument] webArchive] mainResource];

WebArchive *archive = [[WebArchive alloc]
       initWithMainResource:dataSource
       subresources:nil
       subframeArchives:nil];

[[archive data] writeToFile:@"output.webarchive" atomically:YES];

Hoffnung, dass jemand hilft.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top