在写本文前,我必须介绍几点内容:
第一点:屏幕上面显示的内容多少和屏幕的尺寸大小无关
第二点:屏幕上面显示的内容多少和分辨率完全无关
第三点:屏幕上面显示的内容多少和屏幕尺寸、屏幕分辨率、PPI等都是无关的

那到底什么才影响屏幕上面显示内容的多少呢?在苹果的iOS设备里面,那就是屏幕上Points(pt)点的数量,Point是一个绝对测量尺寸,一个Points可以表示多个像素,比如非视网膜上,1个Points就代表一个像素,但在视网膜屏幕上,1个Points就代表4个像素。也就是说3.5寸480*320分辨率的屏幕和3.5寸960*640视网膜分辨率的屏幕含的点数都是480*320,因此显示的内容一样多。统一使用Points对界面元素的大小进行描述,可以避免分辨率对编程思维的迷惑,在对普屏和Retina屏设备开发应用程序时,进行描述的界面元素的大小是一样的,系统发现是视网膜屏幕的设备时,就使用4倍像素渲染,因此就不会在不同设备上出现文字图标偏大、偏小、不清晰等影响阅读的现象发生。

↑ iOS 7系统(手机用)里面,一个图标使用60*60 Points,在普通屏幕上显示为60*60 像素,在视网膜上显示为120*120像素

在苹果的定义里面,1个3.5寸的iPhone所含的Points数量为320*480,4寸iPhone的Points数量为320*568,1个图标为60*60 points,在非视网膜屏幕上,1个图标显示为60*60 像素,在视网膜上则显示为120*120像素。如果在开发iPhone程序界面的时候,增加Points数量,那么显示的内容就会增多。

↑微软最新的Surface 3 Pro,使用原始分辨率,也就是默认的96DPI,虽然可以显示很多东西,但看不清字!

在Window 系统中,系统使用就是DPI(每英寸像素)来定义文字、图标等元素的。因此,在一定的尺寸下,屏幕分辨率越高,真实DPI 就会越高,所以显示的文字图标及内容越小(Window默认为96DPI)。最后我们就看到蚂蚁爬的字。所以苹果可将分辨率提升四倍,但显示文字、图标并没有缩小或看不,因为苹果用绝对值Points点来定义元素的,非视网膜屏1个Points就表示1个像素,视网膜上,1个Points就表示4个像素。当然屏幕上显示的内容并未增加。

我们来看下苹果为不同尺寸iPhone 所定义Points的数量。iPhone 1/3G/3GS/4/4S Points的数量为480*320,iPhone 5/5C/5S为568*320,iPhone 6为667*375,iPhone 6 Plus为736*414。开发者在开发应用程序时就是基于这个绝对值Points的数量,而不是基于960*640,1136*640,1344*750,1920*1080等屏幕分辨率。原因是不同分辨率对程序开发员会造成迷惑,采用绝对值Points点绝不会出现微软那样的文字缩小或放大的现象;二是我们电脑屏幕并不是视网膜级别的,开发者不好干活;三是把四个像素当一个像素操作是非常不精确的…

iPhone屏幕增加后,可视面积及屏幕显示内容的变化

根据以上表格,也就是说iPhone 5比前代3.5寸屏的iPhone可显示内容增加了18.3%,iPhone 6又比iPhone 5可显示内容增加了37.6%(面积也是增大37.6%),iPhone 6 Plus则比iPhone 5显示内容增加了67.6%(iPhone 6 Plus屏幕的面积比iPhone 5增加了89.1%,稍微解释下,苹果在6 Plus上是以3倍像素渲染的,所以很多朋友都预测iPhone 6的分辨率为2208*1242,因为1920/736 又不是整数,所以苹果先放大3倍像素渲染,然后缩放到1920*1080的屏幕上,因此增加的可视面积和屏幕显示内容不成正比)。到这里,我想小伙伴应该都明白了,苹果不仅仅是把屏幕放大了,而是真真实实让屏幕的显示内容变多了,这才是苹果口中的岂止而大!

↑不同尺寸的iPhone 为其开发应用程序所使用的原始分辨率

小伙伴们可能已经看过来新浪科技对iPhone 6的截图,我们把截图保存到你的4寸屏手机看看,是不是发现文字和图标变得好小,放大到和原系统一样大小时,图片装不下了。

↑iPhone 6的截屏在iPhone 5上显示时,发现文字和图标变得好小(苹果iPhone 6界面的Points点数量增加了38%)


↑再来对比下,小米手机4(5寸屏幕,分辨率1920*1080)主屏幕截图和步步高Xplay X3s(6寸大屏,分辨率为2560*1440)主屏截图在iPhone 5上显示(4寸超小屏,分辨率1136*640),图片不仅完全装下,而且每个字都很清晰、完全可读啊!

所以,苹果采用大屏,不仅增加了可视面积,而且真真切切增加了屏幕的可视内容,其应用程序也都是重新开发了,并没有简单粗暴将过去的应用程序放大到4.7寸或者5.5寸的屏幕上(新浪科技有提到,未优化的应用会发虚)。而Android采用大屏幕高分辨率,就是简单的放大文字、图标,拉伸界面而已,这样的结果就是,哪怕是6寸2560*1440的屏幕显示的内容多少也和4寸的iPhone 5没有区别。

小结下:
相似三角形的面积之比等于边长的平方比(屏幕尺寸用斜对角线表示),因此屏幕的尺寸越大,那么可视面积自然就越大,比如一块4.7寸的屏幕要比4寸的屏幕大38%,6寸要大125%...,但过去,我们并没在更大屏幕和更高分辨率的Android手机上看到比小屏幕手机如4寸iPhone 5上多多少内容,甚至基本上是完全相同,因为这些手机只是简单把文字图标等比放大而已,应用程序开发商也没有做任何优化,并不能让我们接收更多消息,提高工作效率,这也是市面上这些大屏幕的最大缺憾,真的只是大了而已。

而苹果说的是“比更大还更大”(现在换了“岂止而大”),是的,苹果的大屏就是如此,大了,屏幕上含的Points数量变多了,显示的内容增加了,这才是真的大了!显示内容增多可让我们接收更多的消息,可以让我们处理更多的文字图片,可以让我们更具效率,更加尽兴!这才是大屏的意义,所以这才是我们真正该买的大屏手机!

最后,我最喜欢库克每次在发布会上说的,“Remember,Only Apple Can Do This!” 记住,只有苹果才能做得到!只有苹果才敢让开发者为其大屏幕重新开发应用程序,真正不浪费半点屏幕空间。

iOS iphone屏幕分析(岂止而大)的更多相关文章

  1. iOS - iPhone屏幕适配/启动图适配/APP图标适配(iPhone最全尺寸包含iPhoneX/XR/XS/XS Max等)

    趁iPhone新品还没有发布,先整理一下屏幕适配.启动图适配.APP图标适配的笔记,方便以后查阅: 注:部分图片来源于网络 违删; (一)iPhone屏幕适配: (1)屏幕分辨率: ①设计尺寸规范(表 ...

  2. 关于IOS的屏幕适配(iPhone)——资源适配

    IOS的屏幕适配几乎不需要大量的代码操作,更多的时间我们只是动动鼠标选择一下就搞定.可以苹果在这方面做的还是比较人性的,解放了开发者. 首先来说说Iphone这几种屏(由于最近做的是iPhone AP ...

  3. iOS开发点滴:iPhone屏幕适配

    最近开始做iOS开发,遇到一些小问题和解决方法,记录下.   今天是iPhone屏幕适配 iPhone5出来之后屏幕就有iPhone就有了2种尺寸:3.5寸和4寸,xcode 5 的IB设计器里面界面 ...

  4. iOS AppIcon尺寸和上传ITunes构建版本尺寸和iPhone屏幕尺寸

    避免忘记. 记录一下 App Icon: 29X2940X4058X5876X7687X8780X80120X120152X152167X167180X180 ITunes构建版本: 1242 x 2 ...

  5. 每位iOS开发者不容错过的10大有用工具

    内容简单介绍 1.iOS简单介绍 2.iOS开发十大有用工具之开发环境 3.iOS开发十大有用工具之图标设计 4.iOS开发十大有用工具之原型设计 5.iOS开发十大有用工具之演示工具 6.iOS开发 ...

  6. iPhone屏幕适配,历史及现状(http://hjcapple.github.io/2014/10/10/iphone-screen.html)

    iPhone屏幕适配,历史及现状 初代iPhone 2007年,初代iPhone发布,屏幕的宽高是320×480像素.下文也是按照宽度,高度的顺序排列.这个分辨率一直到iPhone 3GS的也保持不变 ...

  7. iPhone屏幕尺寸、分辨率及适配

    转:http://blog.csdn.net/phunxm/article/details/42174937 目录(?)[+]   1.iPhone尺寸规格 设备 iPhone 宽 Width 高 H ...

  8. 【转】iPhone屏幕尺寸、分辨率及适配

    原文网址:http://blog.csdn.net/phunxm/article/details/42174937 1.iPhone尺寸规格 设备 iPhone 宽 Width 高 Height 对角 ...

  9. iOS开发——屏幕适配篇&autoResizing autoLayout和sizeClass

    autoResizing autoLayout和sizeClass,VFL,Masonry详解 1. autoResizing autoresizing是苹果早期的ui布局适配的解决办法,iOS6之前 ...

随机推荐

  1. ionic+cordova+angularJs

    ionic+cordova+angularJs 这里详细介绍下如何用ionic+cordova+angularjs搭建自己的移动端app,包括环境搭建,框架使用等,具体项目已放置在github上,可下 ...

  2. 课题练习——找从1到N出现的1的个数

    #include<iostream.h>#include<conio.h>int Sum1(int n){ int count = 0; //记录1的个数 int factor ...

  3. windows phone和android,ios的touch事件兼容

    1.开发背景 最近用html5写了个小游戏,中间踩过无数坑,有很多甚至百度都百度不到答案,可见html5还真是不成熟,兼容性的复杂度比ie6有过之而无不及,性能那个渣简直无力吐槽.. 好了,吐槽结束, ...

  4. 02.Apache FtpServer使用数据库管理用户

    1.创建数据库及表 使用\apache-ftpserver-1.0.6\res\ftp-db.sql建表,内容如下: CREATE TABLE FTP_USER ( userid VARCHAR(64 ...

  5. 【Android】cocos2d-x-3.1.1环境搭建与创建工程( Win7 32位系统)

    参考资料: http://blog.csdn.net/wxc237786026/article/details/32907079 1.环境搭建 2.创建工程 2.1 VS2012运行 2.2 Andr ...

  6. bzoj 1196 二分+生成树判定

    我们先二分一个答案,对于每个答案,先加一级公路,如果不够k直接break, 然后再加二级公路,加的过程类似Kruskal. /************************************* ...

  7. 【BZOJ】【1020】【SHOI2008】安全的航线flight

    计算几何/二分/迭代/搜索+剪枝 写三个tag可能是因为从哪个方向来理解都可以吧…… 我完全不会计算几何所以抄了ydc的代码 题解:http://ydcydcy1.blog.163.com/blog/ ...

  8. Leetcode#92 Reverse Linked List II

    原题地址 第一步,找到将要翻转的位置,记录翻转部分前一个节点(prev) 第二步,翻转,记录翻转完成后这部分的首(reverseHead)和尾(reverseTail),以及翻转部分之后的一个节点(p ...

  9. Zend Studio 错误集锦[PHP]

    错误信息:Cannot create linked resource '/.org.eclipse.dltk.core.external.folders/.link6'.  The parent re ...

  10. DSP中常用的C语言关键字

    const Ø使用:const 数据类型 变量名: Ø作用:优化存储器的分配,表示变量的内容是常数,不会改变. Ø举例:const char tab[1024]={显示数据}; volatile(易变 ...