假设有尺寸为 200 X 100 像素的cool.png 文件,我想将它用于视网膜和普通设备。我需要获得 UIImageView 100 X 50 点的大小。
我试图根据图像尺寸减小 UIImageView 的大小,并且在视觉上我看不出我是否准备两个带有和不带有缩放修饰符 @2x 的文件或使用 UIImageView 通过 contentMode 属性对其进行缩放。
BOOL retina = [[UIScreen mainScreen] scale] == 2.0 ? YES : NO;
UIImage *img = [UIImage imageNamed:@"cool.png"];
UIImageView *imgView = [[UIImageView alloc] initWithImage:img];
imgView.contentMode = UIViewContentModeScaleToFill;
CGFloat width = img.size.width;
CGFloat height = img.size.height;
if (!retina) {
width = width/2.0;
height = height/2.0;
}
imgView.frame = CGRectMake (somePoint.x, somePoint.y, width, height);
方法有问题吗?