您的位置:首页 > 其它

设备及分辨率

2014-02-16 13:20 190 查看

如果 iPhone 5 把屏幕做大,分辨率跟 iPhone 4 不一样,那以后做 iOS App 怎么处理不同分辨率的问题呢?

1 条评论 分享

按票数排序按时间排序

8 个回答

赞同11反对,不会显示你的姓名



Yop2年iOS技术累积

谢振宇、知乎用户、李力 等人赞同

题目已经假设了iPhone5的屏幕分辨率(而不是屏幕大小)会变大的情况下,不知道下面那些否决这个前提的算不算离题了...

自从iPhone4把屏幕分辨率提升了之后,苹果给开发者提供了一个point的概念,来取代旧的分辨率的概念。
它们假定屏幕上的定位和大小是用point来描述的,而iPhone3和iPhone4的屏幕是由相同的point组成的,都是320pt*480pt,也就是说,对于旧的iPhone,1pt = 1px,而对于retina屏幕,1pt = 2px。
而在代码里面,所有的px的概念都被改成了pt的概念,也就是说,在编程的时候,一个物体对于普通屏幕的坐标跟其对于retina屏幕是一样的(也就是说,以前为普通屏幕所写的代码,可以不需要修改一句代码就可以运行在retina屏幕上)。

然后高清的兼容除了位置和大小的变动之外,app里面图片的大小也变动了。
目前苹果的策略是,允许开发者提供两套图,一套给普通屏幕准备,而另一套给retina屏幕准备,使用文件的名称来区分,比如a.png是普通屏幕的,则a@2x.png则是给retina屏幕的,
但app运行时需要调用图片的时候,系统将自动搜索@2x后缀的图片,如果没有,则自动试用a.png。

所以说,苹果并非没有这方面(修改设备分辨率)的经验,而就第一次而言,苹果使用的策略十分简单,因为并没有对开发者造成太大的困扰。

而且就目前iPhone4的屏幕分辨率而言,我相信已经能够满足用户足够多的时间,而下一次对于显示的改进则不在于分辨率了。

iPad则有可能有分辨率的提升,但仍然可以沿用当前的策略。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: