iPhone 6的iOS背景图像
问题描述:
我试图设置一个UIImage作为UIView的背景。问题是,如果我使用colorWithPatternImage背景图像重复的iPhone 6(据我所知它使用de @ 2x分辨率)。 对于iPhone 6 plus,我没有问题,因为它使用de @ 3x图像,但iPhone 4,4s,5,5s和6使用相同的2 @ x图像并且具有不同的屏幕尺寸。iPhone 6的iOS背景图像
我使用的Xcode 6.
答
我有同样的问题,我解决了以下这个post
基本上,你可以使用:
- 单个图像的1倍,2倍和设置R4。这涵盖了iPhone 4,4S和5/5S/5C以及iPads从iPhone 4布局中缩放应用程序
- 为iPhone 6设置的“xxxxx超大”图像
- “xxxxx-overize @ 3x”设置为iPhone 6加
不是使用上的UIImage自定义类别根据显示器尺寸
#import "UIImage+ImageAdditions.h"
@implementation UIImage (ImageAdditions)
+ (NSString *)resolveAdaptiveImageName:(NSString *)nameStem {
CGFloat height = [UIScreen mainScreen].bounds.size.height;
if (height > 568.0f) {
// Oversize @2x will be used for iPhone 6, @3x for iPhone 6+
// iPads... we'll work that out later
if (height > 667.0f) {
return [nameStem stringByAppendingString:@"[email protected]"];
} else {
return [nameStem stringByAppendingString:@"-oversize"];
}
};
return nameStem;
}
+ (UIImage *)adaptiveImageNamed:(NSString *)name {
return [self imageNamed:[self resolveAdaptiveImageName:name]];
}
@end
+0
尼斯解决方案。谢谢。 – javsmo 2014-12-03 18:25:06
在xcassets和茶选择imageblock从正确的资源加载后将其类型设置为通用设备,然后单独给每个设备选项,希望它能帮助! – ZAZ 2014-10-20 20:07:08
它仅适用于以下选项:1x:iPhone无视网膜,2x:iPhone视网膜,Retina 4 2x:iPhone视网膜4英寸,3x:iPhone 6外加iPhone 6无选择 – Marc 2014-10-21 11:23:36