如何在SwiftUI列表行中具有相同的比例?

如何在SwiftUI列表行中具有相同的比例?,swiftui,swiftui-list,Swiftui,Swiftui List,作为一个敏捷的新手,我不知道如何解决布局问题- 正如您在上面的屏幕截图中所看到的,名称、游戏统计数据和照片之间的比例随着每一行的变化而变化 在我的中,正在使用以下代码: struct TopRow: View { let model:Top var body: some View { HStack { Text(model.given) .font(.headline) S

作为一个敏捷的新手,我不知道如何解决布局问题-

正如您在上面的屏幕截图中所看到的,名称、游戏统计数据和照片之间的比例随着每一行的变化而变化

在我的中,正在使用以下代码:

struct TopRow: View {
    let model:Top
    
    var body: some View {
        HStack {
            Text(model.given)
                .font(.headline)
            Spacer()
            VStack {
                Text("Elo rating: \(model.elo)")
                Text("Average time: \(model.avg_time ?? "")")
                Text("Average score: \(String(model.avg_score ?? 0.0))")
            }
            Spacer()
            DownloadingImage(url: model.photo ?? "TODO")
                .frame(width: 75, height: 75)
        }
    }
}
请如何更改它,以便左侧的给定名称具有相同的宽度


中间也有统计数据吗?(两个宽度不必相等)。

如果所有列表行的中间内容大小相同,则可以使用
.fixedSize
和frame

var body: some View {
    HStack {
        Text(model.given)
            .font(.headline)
            .frame(minWidth: 0, maxWidth: .infinity) //<-- Here
        Spacer()
        VStack {
            Text("Elo rating: \(model.elo)")
            Text("Average time: \(model.avg_time ?? "")")
            Text("Average score: \(String(model.avg_score ?? 0.0))")
        }.fixedSize(horizontal: true, vertical: false) //<-- Here
        Spacer()
        DownloadingImage(url: model.photo ?? "TODO")
            .frame(width: 75, height: 75)
    }
}
var主体:一些视图{
HStack{
文本(给定的模型)
.font(.headline)
.frame(最小宽度:0,最大宽度:无穷大)//