You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SwiftUI预览触发macOS应用独立启动问题求助

解决macOS SwiftUI预览独立窗口遮挡问题

以下是几种可行的解决方法:

  • 开启Xcode内置预览画布
    确保使用Xcode内置的预览画布而非独立应用窗口:

    1. 点击Xcode顶部菜单栏的 View -> Canvas(快捷键 Command + Option + Return),确认画布处于显示状态。
    2. 检查预览代码,避免添加强制启动外部窗口的配置项。
  • 修改预览代码强制画布内渲染
    通过调整预览代码,让内容在Xcode画布中展示:

    struct SwiftUIView_Previews: PreviewProvider {
        static var previews: some View {
            SwiftUIView()
                .previewLayout(.sizeThatFits)
                .frame(width: 400, height: 300)
        }
    }
    

    若仍有问题,可添加环境配置阻止外部窗口触发:

    struct SwiftUIView_Previews: PreviewProvider {
        static var previews: some View {
            SwiftUIView()
                .previewLayout(.fixed(width: 400, height: 300))
                .environment(\.openURL, OpenURLAction { _ in .handled })
        }
    }
    
  • 调整Xcode预览偏好设置

    1. 打开Xcode偏好设置(快捷键 Command + ,),进入 General 标签页。
    2. 在 Previews 区域,取消勾选 "Show Previews in External Window" 选项。
    3. 检查 Behaviors 设置,确保预览相关行为未设置为前置独立窗口。
  • 重置Xcode预览缓存
    若缓存异常导致问题:

    1. 关闭Xcode,删除 ~/Library/Developer/Xcode/DerivedData 目录下对应项目的缓存文件夹(或整个DerivedData文件夹,操作前注意备份)。
    2. 重新打开Xcode,执行清理操作(Command + Shift + K),再重新构建预览。

内容的提问来源于stack exchange,提问作者bobby123uk

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 13:05:27