iPhoneの画像の「読み込み完了」などはありますか?
UIActivityインジケーターを一度破棄して、画像が読み込まれるようにしたい。
これを行うための一般的なベストプラクティスは何ですか?
iPhoneの画像の「読み込み完了」などはありますか?
UIActivityインジケーターを一度破棄して、画像が読み込まれるようにしたい。
これを行うための一般的なベストプラクティスは何ですか?
UIImage
同期APIがあります。これは、を作成(または描画)すると、UIImage
ロードおよび解凍されたことを意味します。UIImage
これは、その画像をロードするのにかかる限り、缶を作成(または描画)するためのメソッド呼び出しがブロックできることも意味します。
画像の読み込み中に他のことをしたい場合は、画像をバックグラウンドスレッドに読み込む必要があります。これは、Core GraphicsCAPIを使用して可能です。UIImage
スレッドセーフではなく、メインスレッドでのみ使用できます。
が読み込まれ、に正しく表示されたUIActivityIndicatorView
後で単に却下したい場合は、次のことを試すことができます。UIImage
UIImageView
- (void)loadImageAtPath:(NSString*)path
{
// show the indicator
[_myIndicatorView startAnimating];
// give UIKit a chance to setup and draw the view hierarchy:
[self performSelector:@selector(_loadImageAtPath:)
withObject:path
afterDelay:0];
}
- (void)_loadImageAtPath:(NSString*)path
{
// load the image
_myImageView.image = [UIImage imageWithContentsOfFile:path];
// force the image to load and decompress now
_myImageView.image.CGImage
// image is ready, so we can remove the indicator view
[_myIndicatorView removeFromSuperview];
}
私は認めなければなりません、私は上記のコードをテストしませんでした。うまくいったらコメントを残してください。