Sup*_*tar 1 responsive-design swiftui
我有一个视图,它是VStack
另外两个视图的一个视图,仅此而已。
这在纵向(或高/窄 macOS 窗口)中效果很好,但它被压扁、笨拙,并且某些部分在横向(或宽/短 macOS 窗口)中不可用。
我如何让这个视图VStack
在纵向/高/瘦时返回 a ,但HStack
在横向/宽/短时返回 a?
我尝试了很多东西,但都导致编译器错误。由于 SwiftUI 太新了,我在网上找不到任何关于此的信息。
我使用 GeometryReader 并比较宽度和高度解决了这个问题。如果宽度 > 高度,则设备处于横向模式,否则处于纵向模式:
struct MyView: View {
var body: some View {
return GeometryReader { proxy in
if proxy.size.width < proxy.size.height {
VStack {
...
}
} else {
HStack {
...
}
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1873 次 |
最近记录: |