93097

[code]

    struct ContentView: View { 
        @State var color = false
        var body: some View {
            List{…}.listBackground(color ? .white : .black)
            Toggle("テキスト", isOn: $color)
        }
    }
    
[/code]

としても、色が変更されません。  
書き方が違うのでしょうか。

また、`.listRowBackground(color ? .white : .black))`としても変更されません。  
`scrollContentBackground`を`hide`にしても変わりません。

セルの色は変えられないのでしょうか。


CC BY-SA 4.0
2022-12-29T15:58:07.577
93096
2022-12-29T23:36:46.860
2022-12-29T23:30:01.480
18540
39481
question
swift swiftui
セルの背景色を変更したい


`.listRowBackground()`は、`List`全体に対してではなく、セルになる`View`個々に対して、付けてください。

[code]

    import SwiftUI
    
    struct ContentView: View {
        
        @State var isBasicColor = true
        
        var body: some View {
            List { 
                Text("Blue")
                    .listRowBackground(isBasicColor ? Color.blue : .red)
                Text("Red")
                    .listRowBackground(isBasicColor ? Color.red : .white)
                Text("Yellow")
                    .listRowBackground(isBasicColor ? Color.yellow : .blue)
            }
            .padding()
            Toggle("Cell colors", isOn: $isBasicColor)
        }
    }
    
[/code]

[![Cell
Color](https://i.stack.imgur.com/h4sAv.png)](https://i.stack.imgur.com/h4sAv.png)


CC BY-SA 4.0
2022-12-29T23:36:46.860
93097
2022-12-29T23:36:46.860
18540
93096
answer