macos - macOS SwiftUI:基于子最小宽度约束窗口最小宽度
问题描述
我的应用程序有一个主文档窗口,左侧包含一个列表,右侧包含一些详细信息:
var body: some View {
NavigationView {
List(0 ..< 5) { layer in
NavigationLink(destination: LayerDetail()) {
LayerItemCell()
}
}
.frame(minWidth: 200.0)
}
}
List
我已经为右侧的视图和详细视图指定了最小宽度。不幸的是,当我缩小窗口以使列表和详细信息视图都被迫缩小到最小值以下时,SwiftUI 使列表消失,而不是将窗口限制为最小尺寸:
我真正想要的是窗户不要缩小那么小。但是我真的不想添加.frame(minWidth:)
约束,因为那样我在代码中有两个地方可以检查设计是否更改。
最后,我如何将图像下方的小状态栏固定在左侧?每个Text
视图都有特定的宽度,当窗口变得太窄时,它会将HStack
off 推向左侧,而不是向右截断:
我在视图层次结构的各个部分尝试了各种方法.frame(alignment: .leading)
,但似乎没有一个能满足我的要求。视图是左对齐的,直到窗口变得太小,此时它们开始居中(并截断左右)。
看起来真的不太.frame()
好(例如我什么都做不了idealWidth
)。但也许我只是用错了。
解决方案
推荐阅读
- maven - 如何将 Cytoscape 画布集成到 JavaFX Maven 应用程序中?
- paypal - Silvestripe 4.4 无法安装omnipay/paypal
- android - 在每台 Android 设备上显示相同大小的文本
- android - 使用 Mockk 模拟语言环境
- entity-framework - 我们可以通过实体框架中的查询执行时间来动态设置命令超时吗?
- coldfusion - 内存文件系统限制不能超过 JVM 最大堆大小
- java - 用我的函数模拟 MissingMethodInvocationException
- command-line - Rust 如何处理进程参数?
- c - 当我按下按钮时,如何对 nRF52 DK 进行编程以发送 BLE MIDI 消息?
- android - java.lang.SecurityException:我的位置需要权限 ACCESS_FINE_LOCATION 或 ACCESS_COARSE_LOCATION