Iphone 如何发现我的视网膜设备正在使用2x图像?

Iphone 如何发现我的视网膜设备正在使用2x图像?,iphone,ios,retina-display,Iphone,Ios,Retina Display,我知道2x图像用于视网膜显示 但我想知道,我们如何确定我的设备使用的是1x映像还是2x映像 还有一件事 我有一个图像名stackOverflow.png,大小50x50,它的2x名为stackOverflow@2x.png尺寸100x98 我的问题是,该设备会选择带有名称或大小的视网膜图像???通常只要看一下它们就不难分辨了,尤其是在iOS模拟器中。将模拟器设置为视网膜模式并查看。与视网膜图像相比,非视网膜图像将明显模糊 至于图像大小,如果您的2x图像实际上不是原始图像的2x大小,您做错了。修复

我知道2x图像用于视网膜显示

但我想知道,我们如何确定我的设备使用的是1x映像还是2x映像

还有一件事

我有一个图像名
stackOverflow.png
,大小50x50,它的2x名为
stackOverflow@2x.png
尺寸100x98


我的问题是,该设备会选择带有名称或大小的视网膜图像???

通常只要看一下它们就不难分辨了,尤其是在iOS模拟器中。将模拟器设置为视网膜模式并查看。与视网膜图像相比,非视网膜图像将明显模糊


至于图像大小,如果您的2x图像实际上不是原始图像的2x大小,您做错了。修复一个或另一个图像,或同时修复两个图像。视网膜图像按名称选择。如果大小错误,图像将被拉伸以适合。这将破坏你试图通过2倍图像获得的高分辨率视网膜效果。

通常不难通过观察它们来判断,尤其是在iOS模拟器中。将模拟器设置为视网膜模式并查看。与视网膜图像相比,非视网膜图像将明显模糊


至于图像大小,如果您的2x图像实际上不是原始图像的2x大小,您做错了。修复一个或另一个图像,或同时修复两个图像。视网膜图像按名称选择。如果大小错误,图像将被拉伸以适合。这将破坏您试图通过2x图像获得的高分辨率视网膜效果。

要检查哪个已加载,您可以使用以下代码:

    UIImage *image = [UIImage imageNamed:@"image"];
    NSLog(@"scale: %f", image.scale); //this will be 2.0 for retina image

或者只需使用两个不同的图像,正如@MidhunMP在评论中建议的那样。

要检查哪个图像已加载,您可以使用以下代码:

    UIImage *image = [UIImage imageNamed:@"image"];
    NSLog(@"scale: %f", image.scale); //this will be 2.0 for retina image

或者只是简单地使用两个不同的图像,正如@MidhunMP在评论中建议的那样。

简单回答第一个问题,在2x图像上添加任何额外标记创建一个图像50x50,并在其上写上“50x50”,然后使用dimen创建一个。100x100,上面写着“100x100”。很好的解决方案@MidhunMP谢谢。。第二次呢one@Rajneesh071当前位置它肯定会取名字(AFAIK)谢谢您的回复。。我的疑问现在很清楚了…简单回答第一个问题,在2x图像上添加任何额外标记创建一个图像50x50,并在其上写上“50x50”,然后创建一个带有dimen的图像。100x100,上面写着“100x100”。很好的解决方案@MidhunMP谢谢。。第二次呢one@Rajneesh071当前位置它肯定会取名字(AFAIK)谢谢您的回复。。我的疑问现在很清楚了…谢谢我使用了不同大小的2 diff图像。。。我发现视网膜图像将根据名称进行选择…如果我们使用不同大小的diff图像,则没有效果…感谢我使用了不同大小的2 diff图像。。。我发现视网膜图像将根据名称进行选择…如果我们使用diff size…则没有效果。。。。