MacOS SwiftUI bouton couleur d'avant-plan des changements après l'obscurité/lumière changement d'apparence

0

La question

Donc, je lance le code ci-dessous dans la cour et je vois 2 boutons sur l'aspect léger, puis-je passer en mode noir. Les deux boutons de mise à jour de la couleur de premier plan dans le cadre de SwiftUI cadre à blanc cassé. Ensuite, j'ai appuyez sur un bouton de la couleur de premier plan sur l'autre bouton(s) changements de gris. Voir la vidéo ci-joint. En Utilisant 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

La meilleure réponse

0

La couleur de premier plan, en effet, semblent pas à régler entre la lumière et l'obscurité modes correctement. Cependant, j'ai été en mesure de le réparer en utilisant une couleur qui prend les apparences différentes en compte par l'ajout d'un .foregroundColor() sur les boutons:

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

Il pourrait être la façon dont je suis en train de la reproduire, mais je ne vois pas ce comportement sur macOS Monterey 12.0.1 pour ce que ça vaut.
Charles A.

Mais est-ce que la mise à jour onTap. Donc, à la lumière de mode de premier plan de l'étiquette est de couleur noir et onTap devient blanc, et sur le mode noir premier plan de l'étiquette est de couleur blanche et onTap elle reste blanche. Le ci-dessus .forgroundColor solution ne permet pas de facteur de onTap changement. Pour essayer la différence du Système ouvert, Pref > Sécurité et Confidentialité et appuyez sur l'icône de verrouillage (en bas à gauche) et observer le comportement du bouton Annuler. Merci!!!!
swifty-george

Réponse de mise à jour.
Yrb

Dans d'autres langues

Cette page est dans d'autres langues

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