MacOS SwiftUI botão cor de primeiro plano as alterações depois de escuro/luz de troca de aparência

0

Pergunta

Então eu executar o código abaixo, no campo de jogos e vejo 2 botões na aparência da luz e, em seguida, alternar para modo escuro. Ambos os botões de atualizar cor de primeiro plano como parte do SwiftUI framework para off-white. Então eu toque em um botão, a cor de primeiro plano no outro botão(s) muda para cinza. Veja o vídeo anexado abaixo. Usando O Xcode 13.1


import SwiftUI
import PlaygroundSupport

struct ContentView: View {
    var body: some View {
        VStack {
            HStack {
                Text("Current")
                    .font(.subheadline)
                    .fontWeight(.semibold)
                    .foregroundColor(.gray)
                    .frame(maxWidth: .infinity, alignment: .leading)
                Label("43.672490, -79.388932", systemImage: "location")
                    .frame(width: 175, alignment: .trailing)
            }
            HStack {
                Button {} label: {
                    Text("
button swiftui
2021-11-22 22:03:17
1

Melhor resposta

0

A cor de primeiro plano, de fato, não parece ajustar-se entre a luz e as trevas modos corretamente. No entanto, eu era capaz de corrigi-lo usando uma cor que leva a diferentes aparências em conta adicionando-o como um .foregroundColor() sobre os botões:

struct ContentView: View {
    let buttonTextColor = Color(.secondaryLabelColor)
    var body: some View {
        VStack {
            HStack {
                Text("Current")
                    .font(.subheadline)
                    .fontWeight(.semibold)
                    .foregroundColor(.gray)
                    .frame(maxWidth: .infinity, alignment: .leading)
                Label("43.672490, -79.388932", systemImage: "location")
                    .frame(width: 175, alignment: .trailing)
            }
            HStack {
                Button {} label: {
                    Text("
2021-11-27 23:12:51

Poderia ser do jeito que eu estou tentando reproduzi-lo, mas eu não vejo esse comportamento no mac Monterey 12.0.1 por que vale a pena.
Charles A.

Mas não atualização de onTap. Assim, no modo de luz de primeiro plano rótulo de cor é preto e onTap ele fica branco e no escuro do modo de primeiro plano etiqueta cor off white e onTap que permanece off-white. Acima .forgroundColor solução não fator de onTap mudança. Para tentar a diferença de Sistema aberto Pref > Segurança e Privacidade e toque no ícone de cadeado (canto inferior esquerdo) e observar o comportamento do botão Cancelar. Obrigado!
swifty-george

Resposta atualizada.
Yrb

Em outros idiomas

Esta página está em outros idiomas

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................