【发布时间】:2020-02-10 07:07:23
【问题描述】:
我正在尝试构建一个List,其中所有行都具有相同的高度
struct ContentView: View {
@State var content = ["row1", "row2\nrow2\nrow2", "row3"]
var body: some View {
List {
ForEach(0..<content.count, id: \.self) { index in
Text(self.content[index])
}
}
}
}
【问题讨论】:
-
您是否尝试为 Text(self.content[index]) 设置 .frame ?
-
@KeyurTailor 不知道框架,高度应该按照列表中最大的高度
-
@KeshuR。不是真的,
.defaultMinListRowHeight可以用来设置最小高度,但我不知道我的行的高度 -
您需要计算内容中最长字符串的最大
height,然后将frame用于Text与计算出的height。 -
@Kamran 我在这个例子中使用了
Text视图,我的真实行比这复杂得多,几个Text视图排列成HStack和VStack,所以这不会工作