To jest standardowe zachowanie SwiftUI w iOS 15, ponieważ jest ono domyślnie realizuje zalecenia kierownictwa Apple na ludzkiej interfejsu, w którym czytamy, że na kartach powinny być wypełnione opcje znaków SF, natomiast na bocznych panelach iPad powinien być stosowany wariant ścieżki.
Efekt uzyskuje się poprzez automatyczne aplikacji iOS .symbolVariant
wartość środowiska, jak określono w dokumentacji łańcuch znaków:
SwiftUI ustawia dla ciebie opcja w niektórych środowiskach. Na przykład, SwiftUI automatycznie stosuje fill
wariant znaku dla elementów, które są wyświetlane w zamknięciu zawartości swipeActions(edge:allowsFullSwipe:content:)
metoda lub jako elementy paska zakładek w widoku kart.
Jeśli koniecznie chcesz pozbyć się tryb wypełnienia, to celowo zrobione trudne, ale nie niemożliwe. Należy zastąpić dostarczony \.symbolVariant
zmienna środowiskowa bezpośrednio na Label
element, wewnątrz tabItem
deklaracja:
Text("Map!")
.tabItem {
Label("Map", systemImage: "map")
.environment(\.symbolVariant, .none)
}
Z pomocą .symbolVariant(.none)
modyfikator lub próba ustawić wartość środowiska powyżej na wykresie widoku nie zadziałają.
Teraz, gdy widzisz, jak zastąpić efekt i tak bym radził korzystać z gotowych formularzy na pasku kart. Biorąc pod uwagę, że pasek kart w wielu przypadkach nie różni się kolorem od reszty strony, artykuł wizualny ciężar, przymocowaną do elementów kart za pomocą pełnej wersji, nadaje tym elementom pożądany wizualny ciężar.