Wie speichern Sie WebArchive webView editierbare Inhalte?
-
11-10-2019 - |
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!
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