[SwiftUI]リスト(list)の行の高さを変えるには?

SwiftUI

どうも、ちょげ(@chogetarou)です。

リストの要素を表示する行の高さを変える方法を紹介します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

Listの行の高さを変えるには、environment修飾子を使います。

まず、Listもしくはそれより上の階層のビューにenvironment修飾子を付与します。

そして、environmentの第1引数に「\.defaultMinListRowHeight」、第2引数に行の高さを指定します。

List {
    //List Rows
}
.environment(\.defaultMinListRowHeight, /*行の高さ*/)

environment修飾子を使うことで、リストの行の高さを変えることができます。

environment修飾子で設定するのは、デフォルトの「行の最小の高さ」です。

1つ1つの行の高さは、frame修飾子を使うことで変えることができます。

具体的には、リストの要素にframe修飾子を付与し、frameの引数「height」に高さを指定します。

List {
    ListRows()
        .frame(height : /*行の高さ*/)
}

使用例

以下は、使用例です。

struct ContentView: View {
    
    var body: some View {
        VStack {
            List {
                ForEach (1..<6, id: \.self) { index in
                    Text("\(index)")
                }
            }
        }
        .environment(\.defaultMinListRowHeight, 100)
    }
}

コメント

タイトルとURLをコピーしました