Как обработать изображение черного цвета для темного режима в моем приложении iOS? - PullRequest
0 голосов
/ 28 февраля 2020

Я полностью поддерживаю iOS dark mode в своем приложении для iPad. Проблема только в темном режиме, когда изображение марки lo go имеет черный цвет. Как правило, все марки lo go никогда не окрашиваются в белый цвет, поэтому для режима освещения проблем нет.

Вот скриншот для обоих режимов:

Adura brand lo go в режиме Light

enter image description here

Adura brand lo go в режиме Dark

enter image description here

Как разместить такие логотипы? Я получил несколько предложений установить фоновый вид за lo go с серым цветом, но опять-таки некоторые марки могут прийти с серым цветом lo go.

1 Ответ

1 голос
/ 28 февраля 2020

Вот пример кода:

// Somewhere where you set UIImage for UIImageView
let imageView = UIImage()
let image = UIImage(named: "img.png")?.withRenderingMode(.alwaysTemplate)
imageView.image = image
imageView.tintColor = .black
...

override func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?) {
        super.traitCollectionDidChange(previousTraitCollection)
        if traitCollection.userInterfaceStyle == .dark {
            imageView.tintColor = .red
        }
        else {
            imageView.tintColor = .black
        }
    }
...