Элемент интерфейса имеет разные цвета в 12 и 13 iOS - PullRequest
2 голосов
/ 20 января 2020

У меня есть несколько интерфейсов на экранах (UIButton, UISegmentControl et c). Я устанавливаю цвет для них программно с помощью logi c. Но они отображаются по-разному. На IOS 12 у меня по умолчанию синий цвет, на iOS 13 все работает нормально.

Это я использую для изменения цвета для управления сегментами:

func changeTitleTextColor(normalColor: UIColor, selectedColor: UIColor) {
    let normalTextColor = [NSAttributedString.Key.foregroundColor: normalColor]
    let selectedTextColor = [NSAttributedString.Key.foregroundColor: selectedColor]
    self.setTitleTextAttributes(normalTextColor, for: .normal)
    self.setTitleTextAttributes(selectedTextColor, for: .selected)
}

Для UIButton я просто использую:

 func customizeBy(checked: Bool) {
    backgroundColor = checked ? Colors.MattGreen : .white
    tintColor = checked ? .white : .clear
    borderColor = checked ? .clear : Colors.PlaceholderColor
}

Цвета это моя пользовательская структура, которая возвращает UIColor:

  struct Colors {
    static let MattBlack = UIColor(named: "MattBlack")! 
}

Что может быть не так?

...