Swiftで繰り返し処理をおこなう場合、通常for-in文などの制御構文を使うが、ビューを繰り返し定義する場合はSwiftUIのForEach構造体を使用する。
var ary = ["A", "B", "C"] ForEach(0 ..< ary.count) { Text(self.ary[$0]) }
上記はForEach構造体の基本的な構文で、配列aryに定義した文字列をTextビューとして表示する簡単な例だ。
実際に使用する場合は以下のようなコードになる。
struct ContentView: View { var weathers = ["晴れ", "曇り", "雨"] @State var selected = 0 var body: some View { VStack { Picker(selection: $selected, label: Text("今の天気は?")) { ForEach(0 ..< weathers.count) { Text(self.weathers[$0]) } } Text("現在の天気 : \(weathers[selected])") } } }
ユーザーに選択を促すPickerビューについて当記事では詳しく触れないが、選択肢としてTextビューを繰り返し定義している。