如何允许Apple Silicon Mac上“Designed for iPad”模式应用调整窗口大小
调整“Design for iPad”模式窗口大小的实现方法
开启Optimize Interface for Mac后不生效,通常是缺少iPad多窗口支持的配置,按以下步骤操作即可:
- 在Xcode项目的Target设置页,打开「General」标签,找到「Deployment Info」分类下的iPad配置,勾选「Supports multiple windows」
- 排查项目中是否有硬编码的窗口尺寸限制,以及Scene生命周期方法中有没有强制约束窗口大小的逻辑
配置完成后重新编译运行,就能在Apple Silicon Mac上自由拖拽调整应用窗口大小,无需迁移到Catalyst,也不需要使用Rosetta编译。

配置不生效的常见排查方向
- 确认info.plist中
UIApplicationSupportsMultipleScenes字段的值为true - 如果项目原本仅适配iPhone,完成iPad适配后要重新核对多窗口相关配置
- Xcode 14.3之前的部分版本存在该配置偶发失效的bug,升级Xcode到最新正式版即可解决
关于Catalyst、Rosetta的必要性说明
这两个方案都不是实现窗口自由调整的必要条件。纯iPadOS应用只要开启多窗口支持,就可以在Apple Silicon Mac的“Design for iPad”模式下调整窗口大小。Catalyst仅用于需要进一步适配macOS原生交互、系统特性的场景,Rosetta仅用于运行Intel架构的二进制应用,二者和该功能没有强制绑定关系。
内容的提问来源于stack exchange,提问作者Alberto Schiariti
相关产品推荐
相关产品推荐

