3

更新 Xcode 13 下面的代码示例在 Xcode 13 中按预期工作。

Apple Frameworks Engineer 2020 年 10 月更新:

不幸的是,目前没有解决方法可以让您在实时预览之外进行预览。


是否可以在不运行实时预览的情况下创建呈现工作表的 SwiftUI 预览?例如:

struct Sheet_Previews: PreviewProvider {
    static var previews: some View {
        Text("Background").sheet(isPresented: .constant(true)) {
            Text("Sheet")
        }
    }
}

以上结果在以下预览中:

在此处输入图像描述

为了在预览中显示工作表内容,您必须运行实时预览:

在此处输入图像描述

4

2 回答 2

1

Xcode 13.0 似乎可以在不启动实时预览的情况下正确处理此问题。

所以这现在有效:

struct Sheet_Previews: PreviewProvider {
    static var previews: some View {
        Text("Background").sheet(isPresented: .constant(true)) {
            Text("Sheet")
        }
    }
}
于 2021-10-11T07:54:37.897 回答
1

只需让预览提供显示父视图和工作表的两个视图,例如

struct Sheet_Previews: PreviewProvider {
    static var previews: some View {
        Group {       // << will create two previews
            Text("Background")  // << parent view here
            Text("Sheet")       // << sheet view here
        }
    }
}
于 2020-09-28T05:49:06.653 回答