1、应用图片
标准iOS控件里的图片资源,苹果已经作了相应的升级,咱们须要操心的是应用本身的图片资源。就像当初为了支持iPhone 4而制做的@2x高分辨率版本(译者:如下简称高分)图片同样,咱们要为iPad应用中的图片制做对应的高分版本。我知道很多开发者颇有预见性的早在iOS 5.0 SDK上就完成了这一步升级。但是我仍是要强调一点,那就是以前 Michael Jurewitz (@Jury )在推上提到过的:
— 若是想让你的高分图片显示在新iPad上,你必须用Xcode 4.3.1 连同iOS 5.1 SDK编译!html
2、应用图标
接下来确定就是为应用主图标制做高分版本了,由于低分版的图标在新iPad桌面上看起来会惨不忍睹。为了支持更多的iOS设备、更高分辨率的屏幕,iOS开发者须要为本身的应用准备各类尺寸的主程序图标文件,并且这个文件列表貌似会愈来愈长愈来愈长……(译者:叹气~)。详情请参考最新的苹果开发者文档 iOS App Programming Guide 和 iOS Human Interface Guidelines 。从官方文档中,我找出来针对新iPad的Retina显示屏咱们须要准备的东西:
iPad主应用图标 (144×144像素):以前用在iPad 一、2代上的是72×72 像素。如今咱们须要额外的@2x版本(144×144 像素)。
iPad搜索结果图标 (100×100像素):这个图标出如今系统搜索结果中(译者注:还有在系统设置中,若是应用支持的话)。以前版本用的是50×50像素,如今@2x版本须要100×100像素。
文件命名和Info.plist文件:
根据你的应用须要支持的iOS最低版本不一样,你可能须要在Info.plist文件中指定图标文件名,或者是按照苹果的规范命名不一样版本的主图标文件。最悲催的状况恐怕就是,你搞的是一个便可跑在iPhone也可跑在iPad上的通用应用(universal app),而且你打算支持iOS 3.1.x甚至更早的版本(译者:其实如今iOS 4.0及以上版本的设备普及率已经很高了,彻底没有必要支持古董级的版本,咱又不是Android)。由于iOS 3.2以前是不支持在Info.plist文件里面指定图标文件的,因此你得使用苹果指定的规范去命名图标文件。一个完整的列表差很少就是下面这个样子:
● Icon.png – 57×57 iPhone应用图标
● Icon@2x.png – 114×114 iPhone Retina显示屏应用图标
● Icon-72.png – 72×72 iPad应用图标
● Icon-72@2x.png - 144×144 iPad Retina显示屏应用图标
● Icon-Small.png – 29×29 iPhone 系统设置和搜索结果图标
● Icon-Small@2x.png – 58×58 iPhone Retina显示屏 系统设置和搜索结果图标
● Icon-Small-50.png – 50×50 iPad 系统设置和搜索结果图标
● Icon-Small-50@2x.png – 100×100 iPad Retina显示屏 系统设置和搜索结果图标
若是你的应用仅兼容iOS 3.2及以后的版本,那么你能够在Info.plist文件里面指定图标文件,你不用遵照上面的命名规范,固然你非要那么命名也没有问题(译者:为了便于和美工沟通和往后项目资源的管理,仍是建议遵循这套规范)。在iOS 3.2中,苹果在Info.plist文件中引入了CFBundleIconFiles键,在此其中你能够直接指定应用图标的各类版本。若是你忽略了.png的后缀名,那么你也能够忽略高分版本图片的@2x部分,系统会自动匹配。
苹果在iOS 5.0中为了支持报刊杂志(Newsstand)功能,再次引入了一个新的键 CFBundleIcons,这让事情变得更加复杂起来(译者:再次叹气~)。这个键下含有子键CFBundlePrimaryIcon,里面的CFBundleIconFiles子键保存着在此以前保存在Info.plist根节点CFBundleIconFiles键里面的内容。若是你的应用仅支持iOS 5.0及以后版本,那么用一个 CFBundleIcons键就能够,不然的话你还须要同时保留CFBundleIconFiles键和相关内容。
(译者:这里原文讲述稍微有点误差,未提到CFBundlePrimaryIcon,并且比较混乱,使人费解。其实在Xcode里面以默认方式打开Info.plist看到的会是Icon Files和Icon Files(iOS 5)两组键)
总之,为了作到向后兼容,这个环节会给开发者带来一点小混乱,至关容易犯错。因此,建议开发者针对不一样的设备、屏幕组合多作测试。
3、应用商店截屏图片
苹果近期对应用提交作出了规则调整,如如果iPhone、iPod touch应用,必须提交Retina显示屏高分版本的应用屏幕截图。具体图片尺寸要求以下 (前面的尺寸是含系统状态栏状况下的截图):
- 横屏: 960×640 或 960×600
- 竖屏: 640×960 或 640×920
目前苹果还没有对iPad应用提交也作出相似要求,可是为了让你的应用截图在新iPad上看起来呼之欲出,如今是时候考虑使用高分版本截图了。对应的截图尺寸以下 (前面的尺寸是含有状态栏状况下的截图):
- 横屏: 2048×1536 或 2048×1496像素
- 竖屏: 1536×2048 或 1536×2008像素
译者注:原文评论中有人作了补充的,运行时的载入画面,针对新iPad屏幕也须要准备,文件命名和尺寸要求:
- 横屏: Default-Landscape@2x~ipad.png (2048×1496像素)
- 竖屏: Default-Portrait@2x~ipad.png (1536×2008像素)
ios
-----------------------------------------------------------------------------------------------------------------------------浏览器
-----------------------------------------------------------------------------------------------------------------------------app
ICON 设置 官网文档:http://developer.apple.com/library/ios/#qa/qa1686/_index.htmliphone
iPhone、iPad通用的设置ide
图片大小 (px)工具 |
文件名开发工具 |
用途测试 |
重要程度动画 |
512x512 |
iTunesArtwork |
iTunes 商店中展现 在iTunes中获取iTunesArtwork图片①打开iTunes,点击左侧的iTunes Store,在选中的应用图标上右键 拷贝连接, 以后在浏览器中打开连接(这个连接是应用在AppStore上的介绍页面) 如:http://itunes.apple.com/cn/app/pocket-rpg/id411690524?mt=8 ②在显示的页面中,用浏览器上带的开发工具,定位到页面左上角的 175×175的应用ICON 如:http://a3.mzstatic.com/us/r1000/089/Purple/43/61/36/mzl.gvbidihl.175x175-75.jpg 以后将这个连接中的175x175改为512x512后,再打开就获得了对应的 iTunesArtwork图片了 http://a3.mzstatic.com/us/r1000/089/Purple/43/61/36/mzl.gvbidihl.512x512-75.jpg |
能够没有,推荐有 若是没有,在ituens中就不能显示图标,如图: 未知风格,是由于 Ad Hoc版本,就是测试版, 没有正式发布到App Store 上 |
57x57 |
Icon.png |
iPhone/iPod touch上的App Store以及Home界面 |
这个真得有 |
114x114 |
Icon@2x.png |
iPhone 4(高分辨率)Home 界面 [App Icons 设置中的Retina Display] |
能够没有,推荐有 |
72x72 |
Icon-72.png |
兼容iPad的Home界面 [App Icons 设置中的第一个图片] |
能够没有,推荐有 |
29x29 |
Icon-Small.png |
Spotlight搜索以及设置界面 |
能够没有,推荐有 |
50x50 |
Icon-Small-50.png |
兼容iPad的Spotlight搜索 |
若是有设置束,最好有 |
58x58 |
Icon-Small@2x.png |
iPhone 4(高分辨率)的Spotlight搜索和设置界面 |
若是有设置束,最好有 |
320x480 Default.png iPhone4 Launch Images
640*960 Default@2x.png iPhone4 Launch Images
768x1024 Default-Portrait~ipad.png iPad Launch Images
1024x768 Default-Landscape~ipad.png iPad Launch Images
Default-Landscape~ipad.png专为iPad的应用程序
图片大小 (px) |
文件名 |
用途 |
重要程度 |
512x512 |
iTunesArtwork |
iTunes 商店中展现 |
能够没有,推荐有 |
72x72 |
Icon-72.png |
App Store以及iPad上的Home界面 |
这个真得有 |
29x29 |
Icon-Small.png |
iPad上的设置界面 |
若是有设置束,最好有 |
50x50 |
Icon-Small-50.png |
兼容iPad的Spotlight搜索 |
能够没有,推荐有 |
如今不提供iPhone4的必须图标Icon@2x.png,将通不过App Store的审核,因此,如今Icon@2x.png也是必须的了。
Standard display
30x30 .PNG, 24-bit with transparency (but use only 1 color). Worst case size ~350 bytes. 标准的设置 tabicon.png
Retina display
60x60 .PNG, 24-bit with transparency (but use only 1 color). Worst case size ~2000 bytes. tabicon@2x.png
参考转自:http://shy818818.blog.163.com/blog/static/93398309201157104340600/
延长Default.png显示的时间
在delegate.m加入线程延迟
-(Bool)application:(UIApplication *)application didFinishLaunchingWithOptions: (NSDictionary *)launchOptions
{
[NSThread sleepForTimeInterval:10];
.............
}
应用的Default.png图片显示的时间 和 机器加载应用的速度成正比,加载越快,显示的时间越短,加载越慢,显示的时间越长,
感受快的话,能够用上面方法延长它的显示时间
iOS设备如今有三种不一样的分辨率:
iPhone 320x480,
iPhone 4 640x960,
iPad 768x1024。
之前程序的启动画面(图片)只要准备一个Default.png就能够了,可是如今变得复杂多了。
若是一个程序,既支持iPhone又支持iPad,那么它须要包含下面几个图片:
Default-Portrait.png iPad专用竖向启动画面 768x1024或者768x1004
Default-Landscape.png iPad专用横向启动画面 1024x768或者1024x748
Default-PortraitUpsideDown.png iPad专用竖向启动画面(Home按钮在屏幕上面),可省略 768x1024或者768x1004
Default-LandscapeLeft.png iPad专用横向启动画面,可省略 1024x768或者1024x748
Default-LandscapeRight.png iPad专用横向启动画面,可省略 1024x768或者1024x748
Default.png iPhone默认启动图片,320x480或者320x460
Default@2x.png iPhone4启动图片640x960或者640x920
为了在iPad上使用上述的启动画面,你还须要在info.plist中加入
key: UISupportedInterfaceOrientations。
同时,加入值
UIInterfaceOrientationPortrait
UIInterfaceOrientationPortraitUpsideDown
UIInterfaceOrientationLandscapeLeft
UIInterfaceOrientationLandscapeRight。
iPhone上实现Default.png动画
原理:
添加一张和Default.png同样的图片,对这个图片进行动画,从而实现Default动画的渐变消失的效果。
操做:
在- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions中添加以下代码:
// Make this interesting.
UIImageView *splashView = [[UIImageView alloc] initWithFrame:CGRectMake(0,0, 320, 480)];
splashView.image = [UIImage imageNamed:@"Default.png"];
[self.window addSubview:splashView];
[self.window bringSubviewToFront:splashView];
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:2.0];
[UIView setAnimationTransition:UIViewAnimationTransitionNone forView: self.window cache:YES];
[UIView setAnimationDelegate:self];
[UIView setAnimationDidStopSelector:@selector(startupAnimationDone:finished:context:)];
splashView.alpha = 0.0;
splashView.frame = CGRectMake(-60, -85, 440, 635);
[UIView commitAnimations];
就ok了
Sizes of iPhone UI Elements
![]()
Points vs. Pixels
Element Size (in points) Window (including status bar) 320 x 480 pts Status Bar
(How to hide the status bar)20 pts View inside window
(visible status bar)320 x 460 Navigation Bar 44 pts Nav Bar Image /
Toolbar Imageup to 20 x 20 pts (transparent PNG) Tab Bar 49 pts Tab Bar Icon up to 30 x 30 pts (transparent PNGs) Text Field 31 pts Height of a view inside
a navigation bar416 pts Height of a view inside
a tab bar411 pts Height of a view inside
a navbar and a tab bar367 pts Portrait Keyboard height 216 pts Landscape Keyboard height 140 pts
The iPhone 4 introduced a high resolution display with twice the pixels of previous iPhones. However you don't have to modify your code to support high-res displays; the coordinate system goes by points rather than pixels, and the dimensions in points of the screen and all UI elements remain the same.
iOS 4 supports high resolution displays (like the iPhone 4 display) via the scale property on UIScreen, UIView, UIImage, and CALayer classes. If the object is displaying high-res content, its scale property is set to 2.0. Otherwise it defaults to 1.0.
All you need to do to support high-res displays is to provide @2x versions of the images in your project. See the checklist for updating to iOS4 or Apple documentation for Supporting High Resolution Screens for more info.
Adjusting Sizes
Click here to see how to adjust View Frames and Bounds.
Additional References
Apple Documentation: Points vs. Pixels
Apple Documentation: UIBarButtonItem Class Reference says "Typically, the size of a toolbar and navigation bar image is 20 x 20 points."
Apple Documentation: UITabBarItem Class Reference says "The size of an tab bar image is typically 30 x 30 points."
// ----------------------------------------------------------------------------------------------------
圆角半径
iTunes Artwork icon ───────────────────────── 512px (90px)
App icon(iPhone4) ────────────────────────── 114px (20px)
App icon(iPad) ───────────────────────────── 72px (12px)
App icon(iPhone 3G/3GS) ───────────────────── 57px(10px)
Spotlight/Settings icon icon(iPhone4) ───────────── 58px (10px)
Spotlight/Settings icon icon(iPhone 3G/3GS/iPad) ──── 29px (9px)
=====================================================================
Designing an app for iPhone, iPad or iPhone4 Here's a couple of things to keep in mind:iPhone & iPod Touch (1st, 2nd & 3rd Generation) Portrait: 320 x 480 px, 320 x 480 point Landscape: 480 x 320 px, 480 x 320 point Status Bar: 20px, 20point DPI: 163dpi Color Mode: 8bit RGB Color Temperature: Warm Application icon: 57 x 57 px, 57 x 57 point Appstore icon: 512 x 512 px, 512 x 512 point Spotlight search icon: 29 x 29px, 29 x 29 point Document icon: 22 x 29 px, 22 x 29 point Webclip icon: 57 x 57 px, 57 x 57 point Toolbar icon: 20 x 20 px, 20 x 20 point Tab bar icon: 30 x 30 px, 30 x 30 point Launch image: see above portrait/landscapeiPhone4 Portrait: 640 x 960 px, 320 x 480 point Landscape: 960 x 640 px, 480 x 320 point Status Bar: 40px, 20point DPI: 326dpi Color Mode: 8bit RGB Color Temperature: Cool Application icon: 114 x 114 px, 57 x 57 point Appstore icon: 512 x 512 px, 512 x 512 point Spotlight search icon: 58 x 58 px, 29 x 29 point Document icon: 44 x 58 px, 22 x 29 point Webclip icon: 114 x 114 px, 57 x 57 point Toolbar icon: 40 x 40 px, 20 x 20 point Tab bar icon: 60 x 60 px, 30 x 30 point Launch image: see above portrait/landscapeNotes: effectively pixel-doubled previous generations, bare in mind the screen is the same size and concessions will have to be made e.g. keeping assets the same *physical size but doubling their effective resolution. see below.*iPad Portrait: 768 x 1024px, 768 x 1024point Landscape: 1024 x 768px, 1024 x 768point Status Bar: 20px, 20point DPI: 132dpi Color Mode: 8bit RGB Color Temperature: Warm Application icon: 72 x 72 px, 72 x 72 point Appstore icon: 512 x 512 px, 512 x 512 point Spotlight search icon (results): 50 x 50 px, 50 x 50 point Spotlight search icon (settings): 29 x 29 px, 29 x 29 point Document icon: 64 x 64 px, 64 x 64 point Webclip icon: 72 x 72 px, 72 x 72 point Toolbar icon: 20 x 20 px, 20 x 20 point Tab bar icon: 30 x 30 px, 30 x 30 point Launch image: see above portrait/landscapeNotes: many apps include a rounded mask at the corners of the screen/split view - its part of the default view of many apps by the OS. The radius of the rounded corner of these are 6px onto a black background and are optional.Icon size radii (via Toxinide): 29x29px, border-radius: 5px 50x50px, border-radius: 9px 57x57px, border-radius: 10px 58x58px, border-radius: 10px 72x72px, border-radius: 12px 114x114px, border-radius: 20px 512x512px, border-radius: 90px