私はiOSアプリを作成しています。このアプリでは、メモリが問題にならない場合、画面に何千もの画像が同時に読み込まれます。明らかに、これは良いアプローチではないので、私がやりたいのは、これらの画像の一部を「レンダリング解除」して、任意の時点で画面に表示されるのはごくわずかになるようにし、ユーザーが特定のアクションを実行したときにそれらを「レンダリング」することです。だから私の質問は、どうすればこれを行うことができますか?
または、もっと簡単な場合は、すべての画像が同じです。これはちょっと奇妙に聞こえるかもしれませんが、はい、私のアプリでは、画面に何千もの同じ画像をロードする必要があります。これが事実なので、それらはすべて同じファイルを参照するので、メモリ管理は実際には問題ではありませんか?(問題ではないということは、hidden
プロパティを使用して画面に表示されているものと表示されていないものを変更できることを意味します)。私がこれを行うことができれば、私はやっていた
UIImage *image = [[UIImage alloc] initWithContentsOfFile:@"image.png"];
UIImageView *imageView = [[UIImageView alloc] initWithImage:image];
[scrollView addSubview:imageView];
(scrollViewは、UIScrollView
ズーム機能をピンチするために使用していたものUIImageView
です)。ただし、問題は、これを実行しても、UIImageView
まったくレンダリングされないことです。
他のアイデアや提案はもちろんありがたいです、そして事前に感謝します:D