SwiftUI: 'Bool' 型の値を期待される引数型 'Binding' に変換できません ' 質問する

SwiftUI: 'Bool' 型の値を期待される引数型 'Binding' に変換できません ' 質問する

SwiftUI 用のテキストベースのゲームを作成する

文字の ForEach ループで isSelected にアクセスできないのはなぜでしょうか? 次のエラーが発生します:

'Bool' 型の値を期待される引数型 'Binding<Bool>' に変換できません

ライン上でToggle(isOn: character.isSelected){

変数オブジェクトの宣言:@Binding var characters: [Character]

コードはここ:

VStack {
    ForEach(characters) { character in               
        HStack{
            VStack(alignment:.leading) {
                Text("\(character.name)")
                    .fontWeight(.bold)

                Text("\(character.description)")
                .lineLimit(10)
                    
            }
            Spacer()
            Toggle(isOn: character.isSelected){
                Text("a")
            }.labelsHidden()

ベストアンサー1

私の場合、変数ではなく「true」を渡す必要がありました...

解決策は簡単でした:

.constant(true)

おすすめ記事