Abh*_*nav 25 iphone cocoa-touch uiimageview uiimage ios
当我们需要从某个URL下载图像并将其显示在两种设备上时 - Retina(带有2x图像)和常规设备 - 我们是否应该有两个不同的图像URL来处理这个问题?
对于资源包中的图像,我们保持xyz.png和xyz@2x.png并且它正常工作.
对于我们从服务器获取的图像,我们是否需要为这两种图像分别设置图像URL,并使用相同的命名约定(xyz.png和xyz@2x.png)在本地缓存它们?
请点亮这里.
une*_*lue 24
您可以检查设备是否具有高分辨率视网膜显示器,并根据下载不同的图像.不要为照片和接口尺寸无论如何都要缩放的东西而烦恼.
您可以使用创建下载图像的缩放版本
UIImage *image = //download...
image=[UIImage imageWithCGImage:[image CGImage] scale:2.0 orientation:UIImageOrientationUp];
Run Code Online (Sandbox Code Playgroud)
请记住,缩放的100x100图像将成为50x50点图像(2.0刻度).
如果您有视网膜显示器,请先检查
BOOL retina = NO;
if([[UIScreen mainScreen] respondsToSelector:@selector(scale)])
retina = [[UIScreen mainScreen] scale] == 2.0 ? YES : NO;
Run Code Online (Sandbox Code Playgroud)