iOS 设备的屏幕尺寸、分辨率及其屏幕边长比例详细情况是怎样的?
一,3GS;二,4s为代表;三,iphone5;四,ipad2为代表;五,ipad4为代表;六,ipad mini。
只是分辨率不一样的情况,如一二或者四五相比,开发时提供两种分辨率就可以了,应用自动识别?
只是尺寸不一样的情况,如四六相比,开发时完全没有影响?
分辨率以及尺寸都不一样的情况,如二三相比,又如何?
------------------------------------------------------------------------------------------------------------------------------------------------
增加问题:
1.回头想想,其实ios平台,iphone5不是第一次大改分辨率了,ipad的出现就是新增了一个分辨率,而且比例都不一样。那ipad都已经支持,iphone5增加支持应该相对很简单吧。假如开发一个应用,支持所有的iphone以及ipad,是不是就是应用内需要同时提供320 x 480点下、320 x 568点下、768 x 1136点下共三套方案,然后通过[[UIScreen mainScreen] bounds] 获取到当前屏幕的基础分辨率来识别配对?
2.对于iphone来说,两次分辨率的改变都显得小心翼翼,一次成倍的提升,一次只是长度方向上的提升。看看android,即使是亲儿子,每一代出的分辨率都好像很随意,那对于开发者,是不是就可以说即使是针对谷歌亲儿子开发应用,都已经很崩溃?谷歌为啥连亲儿子都这样?
3.除了屏幕之外,其他的硬件对开发应用是不是也有影响,比如CPU。三星的同一代galaxy,CPU都有不同版本,对于应用会有什么影响?
5 个回答
杨镇波,「iDone」已上线 App Store
iPhone/iPod Touch
普通屏 320像素 x 480像素 iPhone 1、3G、3GS,iPod Touch 1、2、3
3:2 Retina 屏 640像素 x 960像素 iPhone 4、4S,iPod Touch 4
16:9 Retina 屏 640像素 x 1136像素 iPhone 5,iPod Touch 5
iPad
普通屏 768像素 x 1024像素 iPad 1, iPad2,iPad mini
Retina屏 1536像素 x 2048像素 New iPad,iPad 4
问一:只是分辨率不一样的情况,如一二或者四五相比,开发时提供两种分辨率就可以了,应用自动识别?
答:在 iPhone 5 跟 iPod Touch 5 没出之前,对于开发者来说,一二就是分辨率不同的区别而已,因为他们都是3.5寸的屏幕。并且,你细心的话会注意到,一二他们的分辨率是成倍的关系。
这给 iOS 的设计和开发都提供了方便,界面设计只需要设计一套,然后进行等比例放大缩小即可。
为了方便开发人员开发,iOS 中统一使用点(Point)对界面元素的大小进行描述。
所以对于一跟二,只需把屏幕大小都当成 320 x 480点 进行开发即可,点跟像素的换算关系如下:
普屏 1点 = 1像素
Retina屏 1点 = 2像素
iPad 上的开发也是这样,只需根据 768 x 1136点 进行开发即可。
而在 iPhone 5 跟 iPod Touch 5 的机器上,对于开发者来说,它的界面大小就是 320 x 568点,你只需根据这个大小去调整你的界面(如果需要调整的话)。
比如:我有一个按钮,要放在屏幕中间的位置,那么在界面大小为 320 x 480点 的设备上,只需设置它的 center 为 (320/2, 480/2) 位置即可,在 3:2 Retina 屏上系统这个按钮也可以正确的显示在中间;
而在屏幕大小为 320 x 568点 的设备上,你就设置它的 center 为 (320/2, 568/2)。
直接通过 [[UIScreen mainScreen] bounds] 即可获取到当前屏幕的基础分辨率,所以不用 hard code。
问二:只是尺寸不一样的情况,如四六相比,开发时完全没有影响?
答:开发时只需要关注分辨率即可,iPad 2 跟 iPad mini 屏幕尺寸不同,但是分辨率一致,所以完全没有影响,在 iPad 2 上可正常跑的 app,在 iPad mini 上也可正常跑。
问三:分辨率以及尺寸都不一样的情况,如二三相比,又如何?
答:在 问一 中已经回答了