[SwiftUI]セグメントのPickerの背景色を変えるには?

SwiftUI

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

SegmentedPickerStyleのPickerの背景色を変える方法を紹介します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

セグメントのPickerの背景色を変えるには、UISegmentedControlを使います。

具体的には、initメソッドやonAppear修飾子などで、「UISegmentedControl.appearance().backgroundColor」に背景色を代入します。

//背景色を代入
UISegmentedControl.appearance().backgroundColor = color

UISegmentedControlを使うことで、セグメントのPickerの背景色を変えることができます。

使用例

struct ContentView: View {
    
    @State private var selectedIndex = 0
    
    init() {
        UISegmentedControl.appearance().backgroundColor = .blue.withAlphaComponent(0.2)
    }
    var body: some View {
        VStack {
            
            Picker(selection: $selectedIndex, label: Text("Select").foregroundColor(.red)) {
                ForEach(0..<5) {
                    Text("Item \($0)")
                }
            }
            .pickerStyle(SegmentedPickerStyle())
        }
    }
}

コメント

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