我怎样在SwiftUI中预览设备的横向模式?
我只有一个简单的预览,类似这样:
struct ContentView_Previews : PreviewProvider {
static var previews: some View {
ContentView()
}
}
现在你可以使用 .previewInterfaceOrientation
修饰符将预览设置为横向模式,包括 landscapeLeft
或 landscapeRight
。
⚠️ 以下来自 WWDC21 的图片使用了 Xcode 13 beta 中不可用的horizontal
和 vertical
。
您可以为 PreviewProvider
设置任何横向尺寸大小。
struct ContentView_Previews : PreviewProvider {
static var previews: some View {
ContentView()
.previewLayout(.fixed(width: 1024, height: 768))
// iPad Mini landscape size
}
}
这是横屏模式的尺寸。
更新: Xcode会检测IDE左上角选择的模拟器关联的设备,并为一些iPad和iPhone的横屏模式应用你所期望的安全区域。
struct ContentView: View {
var body: some View {
NavigationView {
Text("Master")
Text("Detail")
}
}
}
另外,您可以根据自己的需求使用这两个修饰符:
.environment(\.horizontalSizeClass, .regular)
.environment(\.verticalSizeClass, .compact)
.previewInterfaceOrientation
。 - GeorgeContentView().previewLayout(PreviewLayout.fixed(width:568,height:320))
从iOS 15开始,我们可以使用previewInterfaceOrientation
:
struct ContentView_Previews : PreviewProvider {
static var previews: some View {
ContentView()
.previewInterfaceOrientation(.landscapeRight)
}
}
.environment(\.horizontalSizeClass,.compact)
和.environment(\.verticalSizeClass, .compact)
,但不会旋转。 - Matteo Pacini