Тип «CGColor» не имеет элемента «вторичный» — SwiftUI

#swift #swiftui

Вопрос:

Я пытаюсь настроить цвет фона в a ZStack , и мне нужна противоположная тема, поэтому я создаю эффект размытия, когда пытаюсь:

 ZStack {
    Color(.secondary).ignoresSafeArea(.all, edges: .all).opacity(0.3)
}
 

В нем говорится::

 Type 'CGColor' has no member 'secondary'
 

введите описание изображения здесь

Каким было бы альтернативное собственное решение для этого?

Мне пришла в голову эта идея, так как вы можете применить этот цвет вот так:

 .foregroundColor(.secondary)
 

pd: Я использую SwiftUI 3.0

Комментарии:

1. Что за штуку ты пытаешься сдать? UIColor.вторичный? Этого не существует. Есть системные цвета, которые являются чем-то второстепенным . Видишь developer.apple.com/documentation/uikit/uicolor/…

2. @WarrenBurton, например, для данного текста я могу сделать следующее: .foregroundColor(.secondary) мне пришла в голову идея сделать то же самое для представления, но я вижу, что это не работает. Итак, каков был бы подход, чтобы получить цвет, обратный цвету темы, в таком простом цвете? Поскольку в приведенном выше я также могу сделать .зеленый или .белый, я думал сделать то же самое с .вторичным, но это не работает

Ответ №1:

secondary является статическим свойством.

Вы используете их с точкой в имени типа, а не в качестве аргумента инициализатора.

  Color.secondary.ignoresSafeArea(.all, edges: .all).opacity(0.3)
 

Комментарии:

1. Я не слежу, это то же самое, что я написал выше

2. Я не редактировал. Ой.

3. вот так-то! теперь это работает, я знал, что есть способ, ахаха, просто небольшая ошибка в синтаксисе. Спасибо, приму через 2 минуты