0

Retina iPadのそれぞれのサイズが2048 * 1536の約50枚のアニメーションのソリューションを探しています。私は指の動きでそれらをアニメーション化したいと思います(uiimageviewで画像を変更し、タッチ移動イベントと同期します)。画像の読み込みが遅く、アニメーションがフリーズします。その問題を解決するための解決策を見つけたいです。ありがとう。

4

1 に答える 1

0

この状況に対処するのを非常に困難にする問題がいくつかあります。まず、50 個の全画面画像のメモリ使用量が非常に大きくなります。実際に必要なメモリの量に関する背景については、このブログ投稿の「iOS デバイスでのビデオとメモリの使用」を参照してください。. 2 番目の問題は、CPU 使用率です。Retina iPad には複数の CPU がありますが、巨大な PNG 画像のデコードには依然として多くの CPU サイクルが必要であり、アニメーションがスムーズに実行されません。したがって、これをうまく機能させる唯一の方法は、実行時に画像データをデコードしないようにすることと、デコードされたすべてのデータをメモリに保持しないようにすることです。これは、デバイスがクラッシュするためです。最善の解決策は、デコードされたすべてのデータを単純に mmap() して事前にデコードすることです。これにより、実際にデータをコピーすることなく、画像データを CoreGraphics にブリットすることができます。すべてを行うライブラリを使用したい場合は、ブログ投稿の下部にリンクされています。

于 2014-11-13T09:10:49.960 に答える