Apple 的准备指南列出 3 种 SDK 对 iPhone Duo 显示方式的差异:旧版 SDK、iOS 27 SDK 和 iOS 27.1 SDK。所以,遇到留白、裁切或错位时,先记录项目实际使用的 SDK,再用 Xcode 27.1 的 iPhone Duo 模拟器逐一复现展开、折叠和旋转状态;如果问题只在姿态变化后出现,优先检查固定屏幕尺寸或按方向切换布局的逻辑,不要先改设计稿尺寸。(Apple 的 iPhone Duo 准备指南)

谁该看这篇:UI 设计师,需要把 Figma 设计意图与原生界面逐项核对。
产品设计师,需要确认折叠、展开和旋转后,关键流程是否仍清楚、可操作。
项目或 QA 负责人,需要确认团队是否有 Mac 与 Xcode 环境,并划分模拟器和真机验收责任。

最后核验于 2026 年 10 月 26 日;版本信息依据 Apple 的 Xcode 27.1 发布记录,适配行为依据 Apple 的准备指南。 Xcode、iOS 或 macOS 更新后,复核指南和运行环境是否仍适用。

01

先对照 SDK,别把显示差异当成设计稿错误

项目采用的 SDK 会影响应用在 iPhone Duo 上的初始适配表现。Apple 指南说明,使用 iOS 27 SDK 构建的应用会扩展到内屏的大部分可用区域;使用 iOS 27.1 SDK 或更新版本,则会进一步使用完整显示区域,并可能让工具栏和标签栏改为垂直排列。使用较早 SDK 构建的应用仍可运行,但可能在内屏周围留下空白。(Apple 的 iPhone Duo 准备指南)

构建 SDK 可能看到的现象 设计复核重点
iOS 27 以前 应用可能以熟悉的窗口尺寸居中显示,周围有留白 留白可能来自旧 SDK 的适配方式,不足以证明稿件尺寸错误
iOS 27 应用会随内屏扩展,但不一定铺满全部区域 核对主体位置和边缘空间,确认关键内容没有被挤出
iOS 27.1 或更新版本 内容可使用更多显示区域,工具栏和标签栏可能垂直排列 重点检查按钮顺序、控件可触达性,以及文字或图片是否被遮挡

表格描述的是 SDK 相关的显示行为,不是对所有应用最终呈现效果的保证。Apple 也提醒,升级 SDK 后仍需检查应用内容是否适应新的栏位布局。

02

iPhone Duo 模拟器界面错位,拉伸或裁切该先检查什么?

先看错位是否随可用空间变化:如果画面在展开时拉伸、折叠后内容偏位,或宽屏下图片主体被切掉,优先检查布局是否固定读取主屏尺寸,以及图片是否使用铺满裁切;如果问题只落在工具栏、标签栏或按钮附近,再检查安全区域和栏位方向。Apple 指出,硬编码屏幕尺寸、固定设备方向等假设可能导致内容拉伸、裁切或位置异常。

可观察症状 优先排查 复核时看什么
展开后周围留白明显 项目构建 SDK 留白是否与旧 SDK 的适配表现一致
折叠或展开后控件偏位 固定屏幕尺寸、一次性读取尺寸 姿态变化后,界面是否重新按当前空间布局
旋转后出现错误布局 根据设备方向选择布局的分支 实际可用宽高变化后,界面是否选择合适的排列
工具栏、按钮被挤压或遮挡 垂直栏位、安全区域、可用空间 主要操作是否完整可见且可触达
图片铺满后主体被切掉 图片填充方式与焦点位置 宽屏状态下主体是否仍留在画面内

这张表用于确定排查顺序,而不是直接替开发下结论。例如,背景图铺满边缘可以是预期设计,但主要按钮落入遮挡区域则是另一类问题;二者不能因为都发生在屏幕边缘,就归为同一个尺寸错误。

03

展开后布局不适配,检查可用尺寸,不只看设备方向

设备是横向还是纵向,并不总能说明应用实际获得的区域是什么形状。Apple 建议根据视图或窗口的可用宽高来决定布局;如果代码只看设备方向,就可能在折叠、展开或多任务区域变化后选错布局分支。UIKit 可检查 view.bounds,SwiftUI 可用 GeometryReader 获取容器尺寸。(UIView 的 bounds 文档)(GeometryReader 文档)

开发团队可先在项目中搜索常见的固定条件。下面的命令只用于定位可能相关的代码,不代表每个匹配项都是错误:

grep -R -nE 'UIScreen\.main|UIDevice\.current\.orientation|interfaceOrientation|statusBarOrientation' --include='*.swift' .

可能看到类似输出:

Sources/Layout.swift:18: let width = UIScreen.main.bounds.width
Sources/Panel.swift:42: if UIDevice.current.orientation.isLandscape { ... }

读到这类结果时,设计师可以把具体页面、复现姿态和错位位置交给开发逐项核对。Apple 建议避免用主屏尺寸决定应用区域大小,也不建议仅凭设备方向判断布局;在 UIKit 中,视图的 bounds 描述该视图自身坐标空间的位置与尺寸,SwiftUI 则可以按容器尺寸组织内容。

⚠️ 不要仅凭代码搜索结果要求开发“删除所有方向判断”。方向可能用于相机预览等特定功能;要确认的是,它是否被错误地当作界面可用形状的唯一依据。

04

第二步:检查栏位、安全区域和图片裁切

iOS 27.1 SDK 下,工具栏或标签栏可能转为垂直排列。设计复核时,不只要看控件有没有出现,还要确认主要操作仍然容易找到,文字没有被压缩,点击区域没有被系统界面挡住。Apple 的技术讲解建议让前景交互控件留在安全区域内,同时在不同配置下测试安全区域和边距;背景则可按设计需要延伸。(Apple 的 iPhone Duo 技术讲解)

图片或视频也要单独复核。全屏铺满在宽屏上可能裁掉主体;这不一定表示资源文件尺寸错了,可能是填充策略没有针对新比例调整。对照设计稿检查主体焦点、标题和交互控件:背景可以延伸,关键内容与操作必须仍然清楚。

检查对象 通过条件 未通过时记录
工具栏与标签栏 主要操作可辨认,顺序符合页面任务 哪个姿态下变成垂直排列、具体哪个操作难以找到
安全区域与按钮 关键控件不被系统界面遮挡,仍可操作 被遮挡的控件、位置及设备姿态
铺满图片或视频 主体没有因宽屏裁切而丢失 主体被切掉的区域及对应页面
文本与卡片 标题、正文、卡片内容未重叠或溢出 出问题的内容、内屏或外屏、构建 SDK
05

第三步:按顺序复现,并把验收边界写进交接记录

  1. 确认运行环境。记录 Xcode 版本、项目构建 SDK,以及模拟器运行的系统版本。Xcode 27.1 于 2026 年 10 月 15 日发布;官方系统要求页面列明,Xcode 27.1 需要 macOS Tahoe 26.6 或更新版本。(Xcode 27.1 发布说明)
  2. 先跑代表性页面。选出最容易暴露问题的页面,例如含主要按钮、工具栏、长文本或大图的关键流程页;记录预期状态,不要只凭首页截图判断适配。
  3. 在 Device Hub 复现姿态。使用 Xcode 27.1 的 iPhone Duo 模拟器检查展开、折叠和旋转后的关键界面。Apple 的指南明确提到该模拟器和 Device Hub,可用于检查不同姿态。
  4. 逐屏记录差异。写明问题在哪个显示屏、哪种姿态、哪个页面出现,并附上 SDK 信息和截图;把“界面太挤”改成“展开后的内屏工具栏中,主要按钮被挤到第二行”这类可复现描述。
  5. 交给开发核对布局条件。优先检查固定屏幕尺寸、按设备方向选择布局、尺寸变化后是否重新布局,以及安全区域和栏位排列。
  6. 修复后重复同一组检查。用同样的页面、姿态和检查条件复测;再由负责真机验收的团队安排真实设备验证。

Apple 的通用运行说明提醒,模拟器运行在 Mac 上,并不能复现真实设备的全部性能或硬件特性;要验证应用是否在真实设备上按预期运行,还应使用真实设备。iPhone Duo 的专属模拟器适合检查布局和交互问题,但不应被描述成真机验收的替代品。可对照 在模拟设备或实体设备上运行应用的说明。

06

没有自己的 Mac,设计师怎么检查原生界面?

如果设计师手上只有 Windows 电脑,本地无法直接打开 Xcode 的 iPhone Duo 模拟器;Figma 原型可以核对设计意图,但不能代替应用实际运行时的原生界面复核。此时,团队可以安排有 Mac 的开发或 QA 同事提供复现与截图,也可以评估远程 Mac 环境,用 Xcode 模拟器检查代表性页面。Xcode 27.1 的官方要求包含 macOS 版本条件,选择环境前应先确认其能够满足项目需要。

方案 适合的工作 需要注意
由开发或 QA 在 Mac 上复核 设计师只需提交标记和验收记录 需协调时间,截图和反馈依赖团队交接
使用远程 Mac 运行 Xcode 需要亲自查看模拟器、连续核对页面 先确认远程环境的 macOS 与 Xcode 条件,并用代表性项目验证
使用 Figma 原型或静态截图 早期讨论设计方向、页面结构 不能证明原生应用在不同姿态下布局和交互正常
真实设备验收 验证设备上的实际操作和硬件相关表现 应由团队明确安排,不能用模拟器画面代替

团队如果考虑远程 Mac,先看 NodeMini 的 Mac 环境入口,并根据项目需要核对 Mac 环境选择信息。下单或开始验收前,应确认可用的 macOS 版本、Xcode 运行条件和实际访问方式;本文不对具体环境配置或可用性作保证。

对于主要使用 Windows 的设计团队,继续只用 Figma 有三处实际限制:无法在本机运行 Xcode 模拟器;静态画面看不出折叠或展开时的动态布局变化;把检查交给开发后,设计师不一定能及时自行复现。若工作只是阶段性地检查 iPhone Duo 原生界面,租用 Mac 可作为减少硬件投入的一种选择;若团队长期高频开发、需要稳定控制设备或必须接入实体硬件,则应优先评估自购 Mac 或团队现有的真机方案。租用 Mac 可以提供一个运行 Xcode 的候选工作环境,但不能保证特定项目适配,也不能替代真实设备验收。

下一步先确认项目 SDK,再整理一份包含页面、姿态、问题截图和预期表现的复测记录;如果需要临时 Mac 环境,可通过 NodeMini 了解现有方案,并先用代表性项目确认能否完成所需的模拟器检查。