1

iOS の写真アプリに似たギャラリーをカスタマイズしています。カスタム ギャラリーで個々の写真をスクロールできるようにしたいと考えています。また、すぐに表示される可能性のある画像をプリロードしています (右にスクロールすると、右側の次の 2 つの画像がプリロードされます)。

ただし、画像の読み込みはCPUを消費するため、スクロールに干渉するようです。一瞬スクロールを停止させます。

これを行うより良い方法はありますか?(画面解像度に一致する各画像の小さいバージョンを保持することを検討しました)

基本的に、バックグラウンド スレッドでこれを呼び出します。

UIImage *img = [UIImage imageWithContentsOfFile:path];

次に、ロードされた画像で既存の ImageView を初期化するメイン スレッドでセレクターを実行します。

4

1 に答える 1

1

私はある意味でそれを理解しました。

画像が読み込まれたことを確認するために、バックグラウンド スレッドで画像を画面外にレンダリングする必要がありました。そうしないと、メインスレッドでレンダリングすることを決定するまで、実際にはロードされません。これにより、ロード中にメインスレッドがブロックされました。

于 2013-02-17T19:15:50.267 に答える