DC娱乐网

iPhone Duo 折叠屏适配:iOS开发者收藏备用

看完 Apple 最新的发布会,iPhone Duo 横空出世!作为开发者,最关心的就是如何适配新手机,我梳理了一下,最值得关注的是这些👇
① 布局判断:从“横竖屏”转向“可用空间”
以前常用屏幕宽高、横竖屏判断布局。现在内外屏切换、分屏都会改变窗口大小,而且内屏不遵循 App 声明的方向限制。
👉 用 Size Class + 当前窗口尺寸 决定单列、双列,逐步替换 UIScreen.main,左右安全边距也要分别处理。
② 导航和工具栏:会自动移到侧边
使用新 SDK 后,系统导航容器管理的栏会在适用姿态下竖向排列;自己画的栏需要另外适配。
👉 按钮优先用图标,并保留标题。用 axisBehavior 控制横竖向适配,用 visibilityPriority 决定空间不足时哪些按钮优先保留。
③ 避开折痕:有专门的区域 API
只考虑屏幕四周的 Safe Area 已经不够,自定义布局还要考虑中间折痕。
👉 用 reservedRegion 查询需要避让的区域。重点移动按钮、浮层等关键元素,文章和信息流不必整体绕开折痕。
④ 双区域布局:不用自己写一堆折叠判断
新增 SwiftUI ArrangementView、UIKit UIArrangementViewController,根据空间和折痕调整两块内容。
👉 两块内容都要完整显示,选 Split;允许前后遮挡,选 Overlay。折叠角度 API 更适合交互特效,常规布局优先用这些容器。
⑤ 相机:前置摄像头需要随内外屏切换
普通需求可用虚拟前摄,系统自动切换,但能力限于两颗镜头的共同部分。
👉 单独管理镜头时,用 AVCaptureDeviceDirectionCoordinator 判断相机相对当前界面的朝向,不能只看 .front。
普通 App 建议先做 可变尺寸布局 → 系统栏 → 自定义控件避让,再考虑双屏等增强功能。
#i#iPhone #apple #i#iOS #开发者 #程序员 #iPhoneDuo #苹果发布会