2010-12-21 12 views
3

Ich habe eine UIImageView über eine Ansicht platziert und ich möchte iPhone Bildschirm erfassen, während UIImageView animiert.Wie man iPhone Bildschirm mit dem Animieren von UIImageView gefangennimmt?

Ich kann erfolgreich die Screenshots der Standbilder von der UIImageView wie folgt erfassen:

[[myView layer] renderInContext:context]; 

jedoch, wenn die UIImageView throguh wird Animieren

[MyImageView startAnimating]

dann, diese Animieren Rahmen werden nicht eingefangen.

Gibt es im Moment eine Alternative zu renderInContext, die auch die Animationsframes erfassen kann?

HINWEIS: Ich weiß, UIGetScreenImage() wird nicht mehr von Apple nach iOS4-Update akzeptiert.

Antwort

5

CALayers verwenden eine Präsentationsschicht, um den aktuellen Status der Ebene während der Animation darzustellen. CALayer-presentationLayer Methode gibt Ihnen die Präsentationsschicht zurück. So können Sie versuchen, [[[myView layer] presentationLayer] renderInContext:context]; seinen Inhalt zu erfassen.

+0

gut, es hat funktioniert! Danke, dass du mir eine Nacht gerettet hast :) –

+0

funktioniert es für 'AVCameraCapturePreviewLayer' –

Verwandte Themen