前回までにListとSectionの使い方を紹介しました。今回はSectionを活かしたスタイルの紹介です。
表示結果はコードの後に示します。
コード#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
import SwiftUI
struct ContentView : View {
var body: some View {
List {
Section( "テキストセクション" ) {
Text( "あいうえお" )
Text( "かきくけこ" )
Text( "さしすせそ" )
}
Section( "画像セクション" ) {
Image( "CC0_01" )
.resizable()
.scaledToFit()
}
}
.listStyle( .insetGrouped )
}
}
|
.plain#
.insetGrouped#
iOS17以降では.sidebarを使う場合, 各セクションが閉じているかどうかを確認する値の設定が必要になりました.
- セクションが開いているかどうかを受け取る@StateのBool変数を用意する
- Sectionを作る時, isExpandedにBool変数を結びつける
コード2#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
import SwiftUI
struct ContentView : View {
@State var section1Expanded:Bool = false
@State var section2Expanded:Bool = false
var body: some View {
List {
Section( "テキストセクション", isExpanded:$section1Expanded ) {
Text( "あいうえお" )
Text( "かきくけこ" )
Text( "さしすせそ" )
}
Section( "画像セクション", isExpanded:$section2Expanded ) {
Image( "CC0_01" )
.resizable()
.scaledToFit()
}
}
.listStyle( .sidebar )
}
}
|