#swift #button #swiftui #colors
Вопрос:
Я разрабатываю пользовательский интерфейс в SwiftUI. Есть несколько кнопок, которые я настроил с помощью закругленного прямоугольника. Я хочу, чтобы цвет этого прямоугольника был таким же, как цвет текста — синий по умолчанию и светло-серый в отключенном режиме.
В настоящее время я жестко кодирую цвета. Существует ли какая-либо переменная или функция, доступная для соответствия системным настройкам для любого из этих цветов?
Комментарии:
1. У вас есть пример кода того, что вы пробовали до сих пор? На данный момент лучше всего использовать следующий модификатор для закругленного прямоугольника: RoundedRectangle(радиус угла: 25).заливка(Цвет.синий) —-и измените цвет на любой цвет, который вам нужен
2. Я принял во внимание то, что сказал Джордж. Итак, теперь код выглядит следующим образом: .наложение(RoundedRectangle(cornerRadius: 15) .обводка(отключена ? Цвет.серый.непрозрачность(0,5) : Цвет.Цвет акцента, ширина линии: 1))
3. Теперь я хочу заменить Color.gray.opacity(0,5) вызовом системы, например accentColor, который был бы правильным для отключенного текста.
Ответ №1:
По умолчанию цвет кнопки .accentColor
следующий . Это работает как для светлого, так и для темного режима:
Color.accentColor
Похоже, я пока не могу понять, как получить отключенный цвет кнопки, но я обновлю это, если узнаю.
Комментарии:
1. Спасибо, я только что узнал об этом. Кажется, что у него есть расширение само по себе, в то время как я искал в том, которое определяет ясный, черный, белый, серый, красный и т. Д.