如何将多个 SwiftUI 预览视图水平排列(或以网格方式排列),而不是垂直排列?

17
当渲染多个SwiftUI预览时,它们总是以垂直堆栈的方式呈现。我希望将它们水平布局或理想情况下在网格中布局,因为我在屏幕上有更多的水平空间。
必须在多个预览之间不断上下滚动非常低效,特别是当您拥有两个以上的预览时。
有人知道解决方法吗?或者是否可能实现?
更新:例如,如您在屏幕截图中看到的,我想将这两个预览并排放置。
Xcode版本12.0 beta(12A6159)

enter image description here

2个回答

1
您可以通过以下方式实现。这样做不会显示iPhone边框,但视图会呈现为在iPhone 11 Pro屏幕上的样子。
struct SidebarView_Previews: PreviewProvider {
    static var previews: some View {
        HStack {
            //... All your views ...
        }.previewLayout(.fixed(width: 375 * 2, height: 812))
    }
}

-6

只需将预览的Group替换为HStack,如下:

struct SidebarView_Previews: PreviewProvider {
    static var previews: some View {
        Group {
            //... All your views ...
        }
        
    }
}

至:

struct SidebarView_Previews: PreviewProvider {
    static var previews: some View {
        HStack(spacing: 20) {
            //... All your views ...
        }
        
    }
}

1
对我来说,这似乎只是将两个视图并排放置在单个预览手机内。 - Antony Stubbs
我有同样的问题。没有这个功能似乎是一个很大的疏忽。 - spentag

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接