繁体   English   中英

iphone 6的iOS背景图片

[英]iOS background image for iphone 6

我正在尝试将UIImage设置为UIView的背景。 问题是,如果我使用colorWithPatternImage,背景图像会重复用于iPhone 6(据我所知它使用de @ 2x分辨率)。 对于iPhone 6 plus我没有问题,因为它使用de @ 3x图像,但iPhone 4,4s,5,5s和6使用相同的2 @ x图像并且具有不同的屏幕尺寸。

我正在使用Xcode 6。

我有同样的问题,我在这篇文章后解决了

基本上你可以使用:

  • 单个图像集为1x,2x和R4。 这包括iPhone 4,4S和5 / 5S / 5C - 以及iPad从iPhone 4布局扩展应用程序
  • 为iPhone 6设置的“xxxxx-overize”图像集
  • 为iPhone 6 Plus设置的“xxxxx-overize @ 3x”

在此输入图像描述

然后使用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:@"-oversize@3x"];
        } else {
            return [nameStem stringByAppendingString:@"-oversize"];
        }
    };
    return nameStem;
}

+ (UIImage *)adaptiveImageNamed:(NSString *)name {
    return [self imageNamed:[self resolveAdaptiveImageName:name]];
}

@end

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM