UIImageViewを使用してアニメーションGIF画像を表示するコードがあります:https ://github.com/amleszk/GifBlocking
特定の種類のGIF画像に問題がありますが、99%のケースでうまく機能します。例は、http://i.imgur.com/mbImw.gifにあります。
このgifは、101枚の画像を正常に受信し、アニメーション画像を含むUIImageViewを表示するときにメインスレッドをブロックします。圧縮されている場合はgifを解凍しても問題ありませんが、これでメインスレッドがブロックされないようにするにはどうすればよいですか?
メインスレッドで呼び出されるメソッドは次のとおりです。
DGifDecompressInput
DGifDecompressLine
copyImageBlockSetGIF
問題は、ビューが階層に追加されたときにgifの解凍が発生することです。これは、メインスレッドで実行する必要があります。
ありがとう