У меня есть текстовый атрибут для цвета переднего плана, который я хочу использовать в приписанных строках.Атрибут является константой let
в моем классе, и я хочу инициализировать его с UIColor
, который я передаю в init
для класса.
class LocationOptions {
let live : NSAttributedString.Key!
let black = [NSAttributedString.Key.foregroundColor: UIColor.black]
let grey = [NSAttributedString.Key.foregroundColor: UIColor.gray]
let findingLocation: NSAttributedString!
let centralLondon: NSAttributedString!
let allLondon: NSAttributedString!
init(color: UIColor){
live = [NSAttributedString.Key.foregroundColor: color]
findingLocation = NSAttributedString(string: "Finding Location...", attributes: grey)
centralLondon = NSAttributedString(string: "Central London", attributes: black)
allLondon = NSAttributedString(string: "All London", attributes: black)
}
....
С этим кодом появляется компиляторс ошибкой, когда я присваиваю live
:
Невозможно назначить значение типа '[NSAttributedString.Key: UIColor]' для типа 'NSAttributedString.Key'
ЕслиЯ изменяю объявление live
на
let live: NSAttributedString.Key.foregroundColor!
Компилятор выдает ошибку, когда я объявляю live
:
Статический let 'foregroundColor' не является членомтип 'NSAttributedString.Key'
Как мне инициализировать текстовый атрибут, подобный этому?