Listview SwiftUI列表行高-如何控制?

Listview SwiftUI列表行高-如何控制?,listview,formatting,swiftui,Listview,Formatting,Swiftui,我在SwiftUI中有一个简单的列表。代码和屏幕截图包含在下面。 我想减少列表中每一行的高度(这样行与文本行之间的距离就更小) 我已经尝试在HStack中添加“.frame(高度:20)”,但它只允许增加行距 有办法吗 谢谢 杰拉德 import SwiftUI struct PressureData: Identifiable { let id: Int let timeStamp: String let pressureVal: Int } struct ContentVie

我在SwiftUI中有一个简单的列表。代码和屏幕截图包含在下面。 我想减少列表中每一行的高度(这样行与文本行之间的距离就更小)

我已经尝试在HStack中添加“.frame(高度:20)”,但它只允许增加行距

有办法吗

谢谢

杰拉德

import SwiftUI

struct PressureData: Identifiable {
  let id: Int
  let timeStamp: String
  let pressureVal: Int
}

struct ContentView : View {
  @State var pressureList = [
    PressureData(id: 0, timeStamp: "11:49:57", pressureVal: 10),
    PressureData(id: 1, timeStamp: "11:49:56", pressureVal: 8),
    PressureData(id: 2, timeStamp: "11:49:55", pressureVal: 9),
    PressureData(id: 3, timeStamp: "11:49:54", pressureVal: 1),
  ]

  var body: some View {
    VStack {
        Text("Pressure Readings")
            .font(.system(size: 30))
        List(pressureList) { row in
            HStack {
               Spacer()
                Text(row.timeStamp)
                Text("--->")
                Text(String(row.pressureVal))
                Spacer()
            } .frame(height: 30)
        }
    }
  }
}

使用环境变量设置列表中行的最小高度,然后将HStack帧高度更改为所需高度

代码如下:

var body: some View {
    VStack {
        Text("Pressure Readings")
            .font(.system(size: 30))
        List(pressureList) { row in
            HStack {
                Spacer()
                Text(row.timeStamp)
                Text("--->")
                Text(String(row.pressureVal))
                Spacer()
            }.frame(height: 10)
        }.environment(\.defaultMinListRowHeight, 10)
    }
}
以下是输出:


❤️❤️❤️❤️❤️❤️❤️❤️