我在VStack中有一些描述文字,我想将其限制为3行。我的理解是,我使用Text()修饰符修改了.lineLimit(3)。但是,当我这样做时,某些描述被限制在3行之内,而另一些描述则被限制在1行之内。在这种情况下,似乎没有任何一致性。

我以为这可能是我调用修饰符属性的顺序,但是切换.font(.body).lineLimit的顺序并没有任何改变。我还尝试了删除.padding(),但这也不起作用。

List(clubData) { club in
            VStack(alignment: .leading) {

                Text(club.name)
                    .font(.title)
                    .lineLimit(nil)

                Text(club.subtitle)
                    .lineLimit(4)
                    .font(.body)
            }
            .padding()
        }

这是正在发生的事情的图像:

ios - SwiftUI中Text.lineLimit()行为不一致-LMLPHP

最佳答案

对于Xcode 11 GM,您可能还会得到以下答案的帮助:

https://stackoverflow.com/a/56604599/30602

摘要是在其他Builders内部,您需要将.fixedSize(horizontal: false, vertical: true)添加到Text()中以进行包装。

08-24 22:14
查看更多