NSMutableAttributedString: неоднозначное использование 'init (string: attribute :)' - PullRequest
0 голосов
/ 07 марта 2019

Я пытаюсь запустить код, который написал несколько месяцев назад.Сейчас я использую Swift 4.2 / Xcode 10.1.Я получаю ошибку Неоднозначное использование 'init (string: attribute:)' on

let mutableAttributedString = NSMutableAttributedString(string: "", attributes: [:])

Я также использую SwiftyAttributes 4.3.0 . Здесь Я нашел public convenience init(string str: String, attributes: [Attribute]), но не могу понять, почему Swift хочет вызвать эту функцию.

Как я могу решить эту проблему?Нужно ли обновлять SwiftyAttributes?

1 Ответ

1 голос
/ 13 марта 2019

Проблема была в методе init, объявленном в SwiftyAttributes 4.3.0:

extension NSAttributedString {
    public convenience init(string str: String, attributes: [Attribute]) {
        self.init(string: str, attributes: dictionary(from: attributes))
    }
}

В SwiftyAttributes 5.0.0 этот метод был переименован в public convenience init(string str: String, swiftyAttributes attrs: [Attribute]). Поэтому я обновил атрибуты Swifty для решения проблемы. См. эту ссылку для получения дополнительной информации о исправлении, добавленном в SwiftyAttributes 5.0.0.

...