2

私の要件は、UIImageView に 4000 x 2000 の画像を表示する必要がありますが、この画像を UIImageView に表示しました...ナビゲーションアプリがクラッシュした後にメモリ警告を受け取りました..誰かが私にその問題を取り除く方法を提案してくれませんか..そしてはい、その画像のサイズを変更したくありません

4

2 に答える 2

5

を使用する必要がありますCATiledLayer。サンプル実装については、Apples PhotoScrollerを参照してください。

于 2012-10-22T09:44:02.757 に答える
3

このコードを試してみてください、それはあなたの問題を解決するかもしれません

     CGSize initialImageSize = userimage.frame.size;

     CGSize imageSize = userimage.image.size;
     CGFloat aspectRatio = imageSize.width / imageSize.height;

     CGRect imageFrame = userimage.frame;

     if (initialImageSize.width / aspectRatio <= initialImageSize.height) {
     imageFrame.size.width = initialImageSize.width;
     imageFrame.size.height = imageFrame.size.width / aspectRatio;
     } else {
     imageFrame.size.height = initialImageSize.height;
     imageFrame.size.width = imageFrame.size.height * aspectRatio;
     }
     userimage.frame = imageFrame;

userimage はUIImageView 、イメージをロードする場所です。

于 2012-10-22T10:43:55.447 に答える