Разрешить свойство расширения неоднозначности класса - PullRequest
0 голосов
/ 26 апреля 2018

В моем проекте я использую две библиотеки:

Обе библиотеки имеют расширение для многих классов UIKit. Когда я пытаюсь скомпилировать проект, возникает ошибка:

enter image description here

Я пытался найти решение, но каждый совет не использовал две библиотеки, которые вызывают конфликт. Есть ли шанс решить такую ​​проблему? Может быть, какие-то приоритеты в компиляторе или приведение в коде?

Окружающая среда:

  • Xcode 9,3
  • Swift 3.3
  • Материал 2.14.0
  • SwifterSwift 4.1.1

1 Ответ

0 голосов
/ 26 апреля 2018

Лично я бы не использовал их только для настройки кнопки и сделал бы:

class RoundedButton: UIButton {

    override init(frame: CGRect) {
        super.init(frame: frame)
        self.layer.shadowColor = UIColor.darkGray.cgColor
        self.layer.shadowOpacity = 0.7
        self.layer.shadowOffset = CGSize(width: 1, height: 1)
        self.layer.shadowRadius = 2.0
        self.backgroundColor = UIColor.white
    }

    required init?(coder aDecoder: NSCoder) {
        fatalError("init(coder:) has not been implemented")
    }
}

Если вы хотите использовать одну из этих библиотек, вам, возможно, придется выбрать одну и удалить другую. Или быть придирчивым / осторожным в том, что вы импортируете. Кажется, у них много одинаковых расширений.
Но прежде чем сделать это, проверьте эту ссылку: https://github.com/SwifterSwift/SwifterSwift/issues/176

...