You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SwiftUI List行垂直内边距异常:添加1像素内边距导致行高大幅变化问题求助

SwiftUI List行垂直内边距异常:添加1像素内边距导致行高大幅变化问题求助

大家好,最近我在尝试用@ScaledMetric实现SwiftUI List行的自适应调整,想根据不同字体大小给行添加合适的内边距,结果碰到了个特别诡异的问题:仅仅加1像素的垂直内边距,List行的高度居然会发生巨大变化!

一开始我以为是自己写的单元格布局太复杂导致的,特意做了个极简示例复现问题,代码如下:

struct ContentView: View {
    var body: some View {
        List {
            Section {
                Text("0px")
                    // 取消注释这行就会触发问题
                    // .padding(.vertical, 1)
            }
        }
    }
}

就这么简单的代码,只要把注释掉的padding(.vertical, 1)打开,行高就会突然变大好多,完全不符合预期。我实在搞不懂这是SwiftUI布局机制的特性,还是我哪里写漏了细节?有没有大佬碰到过类似情况,麻烦帮忙分析下原因或者给个解决思路,万分感谢!

内容来源于stack exchange

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.08 13:58:14