Пытаясь понять это предупреждение: [UITabBarItem]! С помощью '!' здесь устарела и будет удалена в будущем выпуске - PullRequest
0 голосов
/ 11 января 2019

В моем коде у меня есть это, но эта часть [UITabBarItem]! вызывает это предупреждение. Теперь я уверен, что это связано с кастингом, но я не могу найти способ не дать ему предупредить об этом.

Использование '!' здесь устарела и будет удалена в будущем выпуске

override func viewDidLoad() {
    super.viewDidLoad()

    for item in self.tabBar.items as [UITabBarItem]! {
        if let image = item.image {
            item.image = image.imageWithColor(tintColor: self.normalTint).withRenderingMode(UIImageRenderingMode.alwaysOriginal)
        }
    }
}

Этот вопрос отличается и объясняется rmaddy.

1 Ответ

0 голосов
/ 07 марта 2019

Я убедился, что сбоя не будет, добавив охрану:

override func viewDidLoad() {
    super.viewDidLoad()

    guard let items = self.tabBar.items else { return }
    for item in items {
        if let image = item.image {
            item.image = image.imageWithColor(tintColor: self.normalTint).withRenderingMode(UIImageRenderingMode.alwaysOriginal)
        }
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...