[SwiftUI]ForEachのインデックス(index)取得方法

SwiftUI

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

この記事では、ForEachで配列やデータのインデックス取得方法について解説します。

まず、ForEachでインデックスを取得する方法は2つあります。

スポンサーリンク

◯ in

1つは、クロージャー( { } )の始めに「○ in」と記述する方法です。

inの前の◯がインデックス名になり、自分で好きな名前にすることができます。

以下は、この方法を使った例です。

ForEach ( 0 ..< 4 ) { index in
    Text("\(index)")
}

0から3までの数字をindexが受け取り、テキストに表示してくれます。

$0

もう1つは、「$0」という記述を使う方法です。

この記述は、クロージャーで受け取る引数名を省略する方法です。

ForEachのクロージャーは、引数として要素のインデックスを受け取っているので、$0はインデックスを取得するのと同じ意味になります。

以下は、この記述法を使った例です。

ForEach(0 ..< 4 ) {
                Text("\($0)")
            }

表示は次のようになります。

まとめ

indexを取得する方法は次の2通りです。

  • クロージャーの始めに「変数名 in」と記述する
  • indexを$0と記述する

どちらでもあまり変わらないですので、好きなほうを使ってみて下さい。

参考:金田浩明『SwiftUI 徹底入門』

コメント

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