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)
上一篇 2022年4月17日 下午1:00
下一篇 2022年4月17日 下午1:20


相关推荐

  • idea2019激活码【最新永久激活】

    (idea2019激活码)最近有小伙伴私信我,问我这边有没有免费的intellijIdea的激活码,然后我将全栈君台教程分享给他了。激活成功之后他一直表示感谢,哈哈~https://javaforall.net/100143.htmlIntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,上面是详细链接哦~09LV…

    2022年3月28日
    5.0K
  • 服务器部署逻辑[通俗易懂]

    服务器部署逻辑[通俗易懂]一、服务器选择服务器,也称伺服器,是提供计算服务的设备。现在可选择的服务器主要分为两种:物理服务器和云服务器。1、物理服务器物理服务器的构成包括处理器、硬盘、内存、系统总线等,和通用的计算机架构

    2022年8月1日
    6
  • QSettings 介绍

    QSettings 介绍QSettings 类提供了持久的平台无关的应用程序设置 用户通常期望应用程序记住它的设置 窗口大小 位置等 所有会话 这些信息通常存储在 Windows 系统注册表 OSX 和 iOS 的属性列表文件中 在 Unix 系统中 在缺乏标准的情况下 许多应用程序 包括 KDE 应用程序 使用 INI 文本文件 QSettings 围绕这些抽象技术 使我们能够以便携的方式保存和恢复应用程序设置 它还支持自定义存储格式 QSettin

    2026年3月26日
    1
  • python(8)—- pyltp5个核心函数

    python(8)—- pyltp5个核心函数1 简介 LTP 语言技术平台 是哈工大社会计算与信息检索研究中心研制的一整套开放中文自然语言处理系统 pyltp 是 LTP 的 python 封装 提供了分词 词性标注 命名实体识别 依存句法分析 语义角色标注的功能 暂不提供语义依存分析功能 2 各个模型功能 1 分词 cws model 2 词性标注 pos model 3

    2026年3月17日
    2
  • thinkphp操作完提示信息该怎么弄成弹出层啊?

    thinkphp操作完提示信息该怎么弄成弹出层啊?

    2021年9月24日
    48
  • 九度 1480:最大上升子序列和(动态规划思想求最值)

    九度 1480:最大上升子序列和(动态规划思想求最值)

    2021年8月28日
    58

发表回复

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

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