根据iPhone尺寸显示启动图像

时间:2015-05-30 06:33:48

标签: ios

if([UIScreen mainScreen].bounds.size.height==667)
{

    animatedSplashScreen.animationImages= [NSArray arrayWithObjects:[UIImage imageNamed:@"i4.png"],nil];    }

if([UIScreen mainScreen].bounds.size.height==736)
{
    animatedSplashScreen.animationImages= [NSArray arrayWithObjects:[UIImage imageNamed:@"i2.png"],nil];    }
if([UIScreen mainScreen].bounds.size.height==568)
{
    animatedSplashScreen.animationImages= [NSArray arrayWithObjects:[UIImage imageNamed:@"i5.png"],nil];
}

2 个答案:

答案 0 :(得分:2)

我不明白为什么你没有使用Asset Catalog。这是一个非常简单的过程,您可以通过它在资产目录中添加图标和启动。

First

Second

Third

摘自this

替代方式,如果您以编程方式执行,那么您可以通过以下宏来检查iPhone屏幕尺寸:

#define IS_IPHONE (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone)
#define IS_RETINA ([[UIScreen mainScreen] scale] >= 2.0)

#define SCREEN_MAX_LENGTH (MAX(SCREEN_WIDTH, SCREEN_HEIGHT))
#define SCREEN_MIN_LENGTH (MIN(SCREEN_WIDTH, SCREEN_HEIGHT))

#define SCREEN_WIDTH [UIScreen mainScreen].bounds.size.width
#define SCREEN_HEIGHT [UIScreen mainScreen].bounds.size.height

#define IS_IPHONE_4_OR_LESS (IS_IPHONE && SCREEN_MAX_LENGTH < 568.0)
#define IS_IPHONE_5 (IS_IPHONE && SCREEN_MAX_LENGTH == 568.0)
#define IS_IPHONE_6 (IS_IPHONE && SCREEN_MAX_LENGTH == 667.0)
#define IS_IPHONE_6P (IS_IPHONE && SCREEN_MAX_LENGTH == 736.0)

答案 1 :(得分:2)

您可以使用LauchScreen.xib。将图像视图设置为xib的主视图大小。使用自动布局将所有四边固定。

即。 1.Trailing space to superView     2.引导空间到superView     3.Bottom空间到superView     4.Tap sapace to superView