我正在使用资产目录来管理我所有应用程序的图像,并且我“正常”加载这些图像 [UIImage imageNamed:@"my-image"];
我想要做的是从资产目录加载图像的非视网膜版本,在视网膜显示器上,但我不知道如何/知道它是否可能。任何见解都会有所帮助。
提前致谢
我正在使用资产目录来管理我所有应用程序的图像,并且我“正常”加载这些图像 [UIImage imageNamed:@"my-image"];
我想要做的是从资产目录加载图像的非视网膜版本,在视网膜显示器上,但我不知道如何/知道它是否可能。任何见解都会有所帮助。
提前致谢
我找到了一个解决方案,但仅适用于 iOS 8:
+ (UIImage *)imageNamed:(NSString *)name
inBundle:(NSBundle *)bundle
compatibleWithTraitCollection:(UITraitCollection *)traitCollection
在哪里
(UITraitCollection *)traitCollectionWithDisplayScale:(CGFloat)scale
所以你可以使用:
// pass nil to inBundle to use the main bundle
[UIImage imageNamed:@"my-image"
inBundle:nil
compatibleWithTraitCollection:[UITraitCollection traitCollectionWithDisplayScale:1.0]];