根据iPhone设备类型显示图像

根据iPhone设备类型显示图像,iphone,macros,device,Iphone,Macros,Device,我试图让我的应用程序在iPad和iPad视网膜上运行,视网膜上的图像分辨率更高。当我在宏中定义所有图像和大小时,我需要创建一个自动切换来重新定义宏 #define IMAGE1 @"Image1" 将成为 #define IMAGE1 @"Image1_Retina" 比如说。代码不必更改。我只需要在图像和分辨率之间进行自动切换。有没有一种方法可以在不接触代码其余部分的情况下更改宏?宏在编译时进行计算。你应该看看UIDevice类,我已经检查过了,但似乎我必须更新整个代码,或者至少剪切并粘贴

我试图让我的应用程序在iPad和iPad视网膜上运行,视网膜上的图像分辨率更高。当我在宏中定义所有图像和大小时,我需要创建一个自动切换来重新定义宏

#define IMAGE1 @"Image1"
将成为

#define IMAGE1 @"Image1_Retina"

比如说。代码不必更改。我只需要在图像和分辨率之间进行自动切换。有没有一种方法可以在不接触代码其余部分的情况下更改宏?

宏在编译时进行计算。你应该看看UIDevice类,我已经检查过了,但似乎我必须更新整个代码,或者至少剪切并粘贴两个版本的代码和相应的图像。我试图避免这种情况。有没有一个解决方案,只需切换一批图像,而不是改变代码?难以置信!我真不敢相信我居然花了几个小时试图找到一个简单的方法来编写这个!我所需要做的就是将@2x附加到我所有的视网膜图像上,然后在视网膜设备上构建应用程序,它就可以正常工作了!您正在使用UIImage/UIImageView吗?只要您有“Image1.png”和Image1@2x.png“在您的应用程序包中。