首页 > 代码库 > Unity iPhone6适配

Unity iPhone6适配

Unity 4.5.4f1是不适配iPhone 6 的,从Unity 4.5.4p1的Release Notes可以看出来。

但是4.5.4p1是在9月18号放出来的。我们在这之前就要做iOS 8 iPhone 6的适配了。

主要是App Icon和Launch Image方面的修改。我这里只说我们是怎么做的,而且我们的测试结果也是对的。

1、

Unity编译之后,删除Images.xcassets目录下面的AppIcon.appiconset和LaunchImage.launchimage这两个目录。

2、

在Xcode里面分别为Icon和LaunchImage新建Image Set。加入需要的分辨率的图片。

3、

新建一个Launch Screen。我们仅仅设置这个Screen的背景被黑色,其他什么都不做。

4、

在Targets->General里面选择AppIcon、LaunchImage、Launch Screen File。

5、

修改iOS/Classes/UI/SplashScreen.mm这个文件,
NSString* imageName = [NSString stringWithFormat:@"LaunchImage%s%s%s%s", iOS7Suffix, orientSuffix, szSuffix, ipadSuffix];

if( UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone )
{
     //iPhone5/5s/iPod5
     if([[UIScreen mainScreen] bounds].size.height == 568 || [[UIScreen mainScreen] bounds].size.width == 568)
         imageName = @"LaunchImage-568h@2x";
     //iPhone6
     if([[UIScreen mainScreen] bounds].size.height == 667 || [[UIScreen mainScreen] bounds].size.width == 667)
         imageName = @"LaunchImage-800-667h@2x";
     //iPhone6 Plus
     if([[UIScreen mainScreen] bounds].size.height == 736 || [[UIScreen mainScreen] bounds].size.width == 736)
         imageName = @"LaunchImage-800-Landscape-736h@3x";
}
//NSLog(@"===\nLaunchIamgeName:%@\n===", imageName);

NSString* imagePath = [[[[NSBundle mainBundle] pathForResource: imageName ofType: @"png"] retain] autorelease];

其他信息,请看后面的参考资料。

参考资料:

iOS8 / XCode6 compatibility  #95
iOS8 Day-by-Day :: Day 27 :: Launch Images
Adapt to Multiple iOS Screen Sizes and Orientations with Size Classes
Adding App Icons and a Launch Screen File
Icon and Image Sizes
大屏iPhone的适配
[iOS] 初探 iOS8 中的 Size Class
ADAPTIVE LAYOUTS FOR iPHONE 6


文档信息

  • 原文网址:http://blog.csdn.net/cdztop/article/details/39718461
  • 最后修改时间:2014年10月01日 15:56

Unity iPhone6适配