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

Xcode13中SwiftUI List Section下多行Text文本意外裁剪问题求解

问题原因

这是Xcode 13.0版本中SwiftUI List的已知布局Bug,系统首次计算Section内Text组件的行高时出现计算偏差,导致文本默认最多显示2行就被裁剪。修改文本内容会触发布局重新计算,此时行高计算恢复正常,因此即使还原为原始文本内容也不会再出现裁剪现象。

解决方案

有三种可选修复方式:

  • 为Text组件添加lineLimit(nil)修饰符,显式声明允许文本自动换行无行数限制
  • 为Text组件添加.fixedSize(horizontal: false, vertical: true)修饰符,强制垂直方向自适应文本尺寸
  • 升级Xcode到13.1及以上版本,该Bug已在后续版本中被官方修复

修复后示例代码

struct SWSettingsContactsView: View {
    
    var body: some View {
        List {
            Section {
                Text("Add your contacts so you can quickly and easily call them from your dashboard.")
                    .lineLimit(nil)
            }
            .listRowBackground(Color(.secondarySystemBackground))
        }
    }
}

内容的提问来源于stack exchange,提问作者Joris

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 17:15:00