iPhone6分辨率与适配[通俗易懂]

(via:sunnyxx’sblog) 分辨率和像素经新xcode6模拟器验证(分辨率为pt,像素为真实pixel):1.iPhone5分辨率320×568,像素640×1136,@2×2.iPhone6分辨率375×667,像素750×1334,@2×3.iPhone6Plus分辨率414×736,像素1242×2208,@3x,(注意,在这个

大家好,又见面了,我是你们的朋友全栈君。

iPhone6分辨率与适配[通俗易懂]

(via:sunnyxx’s blog

 

分辨率和像素

经新xcode6模拟器验证(分辨率为pt,像素为真实pixel):

1.iPhone5分辨率320×568,像素640×1136,@2x

2.iPhone6分辨率375×667,像素750×1334,@2x

3.iPhone6 Plus分辨率414×736,像素1242×2208,@3x,(注意,在这个分辨率下渲染后,图像等比降低pixel分辨率至1080p(1080×1920)

iPhone6分辨率与适配[通俗易懂]

自动适配

不处理时自动等比拉伸,如果在老工程打印屏幕frame,依然是320×568

对比自动适配的和完美适配的导航栏就能看出问题:

iPhone6分辨率与适配[通俗易懂]

因为拉伸所以会有一些虚,导航栏明显比64要大,但相比3.5寸到4寸的留黑边还是好很多。

 

如何关闭自动适配方案呢?这个还是老思路,换启动图:

iPhone6分辨率与适配[通俗易懂]

除了换启动图外,不得不说的是,新Xcode中可以使用一个xib来设置启动图:

iPhone6分辨率与适配[通俗易懂]

不过这个xib不能关联任何的代码(不能自定义View的Class,不能IBOutlet,不能加Object),可以理解成这个xib就是一张截图,这个方案的好处在于可以使用到Size Classes来针对不同屏幕布局这个xib(感兴趣可以看《Size Classes初探》)

 

关于手动适配

只要手动指定了启动图或者那个xib,屏幕分辨率就已经变成应有的大小了,老代码中所有关于写死frame值的代码通通倒霉,如果去手动适配就要全部适配,建议在找到个可行方案前先不要做修改,自动适配方案还算不影响使用。

 

面对4个分辨率的iPhone,建议使用Auto Layout布局 + Image Assets管理各个分辨率的图片 + Interface Builder(xib+storyboard)构建UI,Size Classes在低版本iOS系统的表现未知。想要这套手动适配方案,起码你的工程需要部署在iOS6+,还不用AutoLayout布局的会死的蛮惨。

 

关于Xcode 6

模拟器路径被换成了 ~/Library/Developer/CoreSimulator/Devices/

xcode6中已经找不到iOS6的模拟器了,是时候说服大家放弃iOS7-了

现在起提交App Store强制需要支持64位,是时候梳理一遍所有依赖的第三方lib,更新到64位。(编辑注:这一条据说是个bug)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/126879.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 时间序列模型(ARIMA和ARMA)完整步骤详述「建议收藏」

    时间序列模型(ARIMA和ARMA)完整步骤详述「建议收藏」实现ARMA和ARIMA时间序列模型的预测。

    2022年5月10日
    68
  • iphone一键转移_苹果手机如何一键转移数据 转移教程介绍

    iphone一键转移_苹果手机如何一键转移数据 转移教程介绍众所周知,要更换手机的话,旧手机上的数据怎么办还真的是一个难题啊,毕竟手机用久了,上面的有各种重要的数据不是。那苹果手机换机的话,将数据进行转移,可以分成两种情况,一种吧,就是苹果转苹果,一种就是苹果转安卓了。苹果手机数据转移到新iPhone1、借助iCloud云备份手机自带的云备份功能,肯定是可以用上的。①手机连接上WiFi,然后在手机“设置”中,依次点击“AppleID——iCloud——i…

    2022年5月25日
    58
  • PHP之Memcache和Memcached

    PHP之Memcache和Memcached

    2022年2月8日
    34
  • SQL文件导入Oracle数据库

    SQL文件导入Oracle数据库直接复制SQL文件至pl/sql中执行,若sql文件过大会直接导致数据库卡死,未避免数据库卡死,可直接使用pl/sql工具提供的导入表功能将sql文件直接导入数据库表中1.如下图所示:链接数据库,选择工具–》导入表2.如下图示:选择SQL导入—使用命令窗口–》选择要导入的sql文件–》点击导入按钮3.如下图所示:若提示Done,则表示导入成功,导入成功后需要点击com…

    2022年10月2日
    2
  • 零基础入门STM32编程(二)

    零基础入门STM32编程(二)前情回顾上篇文章初步认识了STM32,了解了STM32的分类及型号命名规则,本篇内容继续STM32串口编程入门学习。一走进STM321.1STM32系列STM32单片机分为四类五种,四类介绍参见上一篇文章,本文仅阐述五个系列,分别为:STM32F0系列是针对8位和16位微控制器的32位MCU替代产品,对于工程人员来说非常有吸引力,他们希望其产品平台不会过时,并可围绕工业标准ArmCortex-M0内核进行标准化开发。 STM32G0系列是基于ArmCortex-M0+核心的新..

    2025年9月27日
    4
  • Windows Server 2008R2 SP1 动态内存

    Windows Server 2008R2 SP1 动态内存

    2022年3月11日
    49

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号