È possibile farlo utilizzando drawViewHierarchyInRect: nessuno degli altri metodi sembra funzionare, utilizzare in questo modo:
UIGraphicsBeginImageContextWithOptions(newRect.size, YES, 0);
BOOL ok = [view drawViewHierarchyInRect:newRect afterScreenUpdates:YES];
if (!ok) {
NSLog(@"Problem with drawView...");
}
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
che sto facendo lo stesso in iOS, ma purtroppo questo metodo è lento, deve anche essere eseguito nel thread principale e funziona solo se afterScreenUpdates è impostato su yes. Vedere questa risposta: How can I take a snapshot of a UIView that isn't rendered?
Inoltre, non c'è modo di dire, da quello che posso vedere, se qualsiasi aspetto della pagina web ha bisogno di essere ridisegnato.
fonte
2016-04-13 21:03:02
Dai un'occhiata a questo (in fondo alla pagina): http://atmarkplant.com/wkwebview-screenshots/ – Moritz
Cocoa not UIKit –
@ErikAigner Hai trovato una soluzione per questo? – Dalmazio