я создаю перечисление в пустом стремительном файл для управления цветовыми схем в моем приложении с этим блоком кода:Swift расширение и перечисление для цветовых схем
enum Color {
case border
case waterMelon
case bleu
case ufoGreen
case lightBlue
}
В нижней части, что я создали расширение базы на Color
перечислимых Я только что сделал.
Здесь расширение:
extension Color {
var value: UIColor {
var instanceColor = UIColor.clear
switch self {
case .border:
instanceColor = UIColor(red:0.92, green:0.93, blue:0.94, alpha:1.00)
case .waterMelon:
instanceColor = UIColor(red:0.97, green:0.38, blue:0.45, alpha:1.00)
default:
instanceColor = UIColor.clear
}
return instanceColor
}
}
Теперь проблема, когда я хочу использовать эти цвета я использовал что-то вроде этого:
//now : I don't like it.
view.backgroundView = Color.dark.value
//that how I want to be
view.backgroundView = Color.dark
// or like this
view.backgroundView = .dark
И я знаю, что это из-за value
, что я заявляю на расширение. но как я могу избавиться от этого?
Вы можете просто использовать статические свойства вместо смотри, например, [этот вопрос и ответы] (http://stackoverflow.com/q/42030338/2976878). – Hamish
без необходимости всего этого, вы просто реализуете 'struct' с цветами' static'. –
@AhmadF Но как я могу использовать вот так: .dark? – Sajad