我对视网膜图像在Xcode中的工作方式感到有些困惑。据我所知,如果我使用图像资源,我可以分别为视网膜和iPhone6 +指定2 *和3 *图像,我只是参考图像,Xcode完成剩下的工作。如果我使用的图像不是来自资产呢?比方说我在服务器上存储用户个人资料图片的图像,如果我有一张70 * 70pt的个人资料图片,我只想将图像设置为140 * 140像素的视网膜显示器吗?对于6+我会这样做吗?设置210 * 210一个?
答案 0 :(得分:4)
只需在项目中包含图片,例如
并在您的项目中正常使用它。
UIImageView *imageView = [UIImageView imageNamed:@"profile.png"];
这与资产具有相同的效果。
答案 1 :(得分:0)
根据我的个人经验,当您将图像上传到服务器时,它会保存原样。 例如:70 * 70像素图像将保存为70 * 70像素。
现在,你有两个选择。
当您使用应用程序获取该图像时,它仅下载为70 * 70,图像将按原样显示在UIImageView中。然后,我建议你保持你的UIImageView尺寸为35 * 35,以保持图像清晰。
上传210 * 210像素图像,然后使用该应用程序下载图像,然后再创建2个副本。一个70 * 70,另一个140 * 140维。
我建议你采用中间方法(140 * 140像素图像,并在70 * 70像素UIImageView中显示),如果你可以在图像质量上有所妥协。
答案 2 :(得分:0)
这就是我的所作所为;
•让你的UIImageView的大小为1x(即70x70)。
•下载您需要的正确分辨率资产(@ 1x为70x70,@ 2x为140x140等)
•使用- (instancetype)initWithData:(NSData *)data scale:(CGFloat)scale
或类似方法创建UIImage,传递正确的比例。