簡體   English   中英

SwiftUI - 我無法在屏幕上更改 Picker 文本的樣式

[英]SwiftUI - I can not change the style of Picker's text on screen

我有一個這樣的選擇器:

Picker(languages[currentIndex].name,selection: $currentIndex){
                    ForEach(0..<languages.count, id: \.self){index in
                        Text(languages[index].name)
                            
                    }
                }

它看起來像這樣:

在此處輸入圖像描述

我正在嘗試設置您在屏幕截圖中看到的藍色“英文”文本的樣式。 到目前為止,我已經嘗試為 Text 和 Picker 本身賦予一些樣式,但我無法成功。

選擇器是菜單樣式,所以我不能將選擇器樣式更改為另一個(即輪子)。 我明確提到了它,因為當我這樣做時,它可以工作:

Picker(languages[currentIndex].name,selection: $currentIndex){
                    ForEach(0..<languages.count, id: \.self){index in
                        Text(languages[index].name)
                            .font(.custom("Montserrat Medium", size:16))
                    }
                }.pickerStyle(.wheel)

然而,這不是我要找的。 我只需要設置這個藍色“英文”文本的樣式:

在此處輸入圖像描述

提前致謝。

作為一種解決方法,您可以使用Menu而不是Picker

struct ContentView: View {
    
    let languages = ["English", "German", "Spanish"]
    @State private var currentIndex = 0
    
    var body: some View {
        
        Menu {
            ForEach(0..<languages.count, id: \.self) { index in
                Button {
                    currentIndex = index
                } label: {
                    Text(languages[index])
                }
            }
        } label: {
            Text(languages[currentIndex])
                .foregroundColor(.orange)
                .bold()
        }
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM