【发布时间】:2015-08-17 21:14:24
【问题描述】:
我正在尝试将大型 UIImage 加载到 UIImageView 中,而无需先重新缩放图像。
这是我目前拥有的(self.mediaView 是我的 UIImageView):
self.mediaView.contentMode = UIViewContentModeScaleAspectFit;
self.mediaView.clipsToBounds = YES;
[self.mediaView setFrame:self.view.bounds];
NSLog(@"screen dimensions: %f x %f", _screenWidth, _screenHeight);
NSLog(@"frame size: %f x %f", self.mediaView.frame.size.width, self.mediaView.frame.size.height);
NSLog(@"image dimensions: %f x %f", self.selectedMedia.getView.image.size.width, self.selectedMedia.getView.image.size.height);
[self.mediaView setImage:self.selectedMedia.getView.image];
从我的日志中,我知道以下内容:
screen dimensions: 320.000000 x 568.000000
frame size: 320.000000 x 460.000000
image dimensions: 1136.000000 x 852.000000
但是当 UIImageView 加载时,UIImage 被切断,所以我可以看出 UIImage 没有正确缩放。
关于如何解决此问题的任何提示?
【问题讨论】:
-
您的代码似乎是正确的,所以问题可能出在使用视图调试器检查图像视图是否超出了屏幕边界,以及您在哪里运行此方法?
-
@Or.Ron 我根据您的建议尝试了视图调试器。当我选择 imageView 时,尺寸是 320 x 460。但是当我点击“显示点击的内容”时,我可以看到图像仍然是 1136x852
标签: ios objective-c uiimageview uiimage