在文本中添加无限行(SwiftUI)

时间:2019-06-06 18:09:06

标签: ios swift swiftui

仅弄清楚如何在await ConversationState.SaveChangesAsync(turnContext, false, cancellationToken); 中实现多行文本。似乎TextText具有相同的默认值(一行),但是我找不到满足此条件的任何函数。

UILabel

编辑

struct ContentView : View { var body: some View { VStack(alignment: .leading, spacing: 10) { HStack { Text("Avocado Toast").font(.system(size: 24)) } // This Text does cut, and I wonder how I can achieve multiple rows Text("Ingredients: Avocado, Almond Butter, Bread") .font(.system(size: 20)) } } } ,做到了。但是,例如,可以不设置特定的数量。只有0?

6 个答案:

答案 0 :(得分:15)

使用此:

Text("Ingredients: Avocado, Almond Butter, Bread")
    .lineLimit(nil)

如果这不起作用,请使用以下方法:

Text("Ingredients: Avocado, Almond Butter, Bread")
    .fixedSize(horizontal: false, vertical: true)

答案 1 :(得分:9)

使用.lineLimit()限制文本行数。它接受一个可选的Int(Int?)作为参数,.lineLimit(nil)允许无限制的行。

答案 2 :(得分:9)

将文本包装为.lineLimit(Int.max)格式对我不起作用。似乎需要一定的宽度才能知道何时包装。我相信官方方法是使用.fixedSize

Text(message)
    .fixedSize(horizontal: false, vertical: true)

文档指出:

  

此示例显示了fixedSize(horizo​​ntal:vertical :)在比其父级更宽的文本视图上的效果,保留了文本视图的理想的,截断的宽度。

答案 3 :(得分:2)

即使没有行数限制,我的文本也一直被截断。将我的内容包装在ScrollView {}中就解决了。

在此处查看更多信息:https://www.hackingwithswift.com/quick-start/swiftui/how-to-add-horizontal-and-vertical-scrolling-using-scrollview

答案 4 :(得分:1)

如果lineLimit(nil)对您不起作用,请尝试将layoutPriority手动设置为适合您的.layoutPriority(0.5)

答案 5 :(得分:-1)

我的解决方案是使用.lineLimit(Int.max)