My Requirment需要在UIImageView中显示4000 x 2000图像,但我在UIImageView中显示此图像...我收到内存警告后,一些导航应用程序崩溃..任何人都可以建议我如何摆脱这个问题..是的,我不想调整图像的大小
答案 0 :(得分:5)
您应该使用CATiledLayer
。有关示例实现,请参阅Apples PhotoScroller。
答案 1 :(得分: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
,您可以在其中加载图片。