我有一个 UIImage
,我想按像素在iPhone 4/4S/5屏幕上显示。重要的是,它不能被缩放,但是当我尝试使用setImage
时,它会使图像太大。
我的 UIImageView
是在 UIStoryboard
中创建的(因为我对此还很陌生),并设置为“redraw”模式,其他所有内容默认。将UIImageViews
的contentMode设置为其他模式都无法正确缩放UIImage
(注:即不起作用)。
我找到了这个:
[self.imageView setImage: image];
self.imageView.frame = CGRectMake(self.imageView.frame.origin.x,
self.imageView.frame.origin.y,
image.size.width,
image.size.height);
这并不起作用。我试过将每个维度减半,但仍然不行。
更新:我认为它在事后被缩放以适应视网膜显示屏,因为在我使用的视网膜 iPhone 4 和非视网膜模拟器模式上,图像使用相同比例的屏幕。有没有办法可以设置UIImage或UIImageView或项目为“视网膜就绪”?
更新2:通过将每个维度减半来使图像变小似乎起作用了。iPhone 4/4S 的像素是 2G/3G/3GS 的两倍。但这似乎是一个 hack 解决方案,而且我甚至不确定它是否利用了视网膜显示屏的像素密度。