MacOS SwiftUI butonul culoare plan frontal se schimbă după întuneric/lumină schimba aspectul

0

Problema

Așa că am rula codul de mai jos în loc de joacă și văd 2 butoane de pe aspectul de lumină, atunci voi trece la modul de întuneric. Ambele butoane de actualizare culoarea prim-plan, ca parte a SwiftUI cadru pentru off-alb. Apoi am apăsați pe un buton de culoare prim-plan pe alt buton(e) modificări la gri. Vezi video atașat mai jos. Folosind 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

Cel mai bun răspuns

0

Culoarea de prim-plan într-adevăr, nu părea să se adapteze între lumină și întuneric moduri în mod corespunzător. Cu toate acestea, am fost capabil de a repara folosind o culoare care ia diferite apariții în considerare prin adăugarea-l ca un .foregroundColor() pe butoanele:

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

Acesta ar putea fi modul în care am încercat să-l reproducă, dar eu nu văd acest comportament pe macOS Monterey 12.0.1 pentru ceea ce merită.
Charles A.

Dar nu-l actualiza onTap. Deci, în modul de lumină prim-plan eticheta este de culoare neagră și onTap acesta devine alb și pe întuneric modul prim-plan eticheta este de culoare albă și onTap rămâne off-alb. Cele de mai sus .forgroundColor soluție nu este un factor onTap schimba. Pentru a încerca diferența Sistem deschis Pref > Securitate și Confidențialitate și apăsați pe pictograma de blocare (stânga jos) și să observe comportamentul de butonul Cancel. Vă mulțumesc!
swifty-george

Răspunsul actualizate.
Yrb

În alte limbi

Această pagină este în alte limbi

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