Swift 5: Почему обновление Swift 5 просит принудительно развернуть label.font?

Следующий код выдает мне предупреждение после обновления проекта до Swift 5. Почему? Кто-нибудь может мне сказать? почему они сделали это необязательным?

let attributes:[NSAttributedString.Key: Any] = [NSAttributedString.Key.font: self.userBioTextLabel.font]
  • Coercion of implicitly unwrappable value of type 'UIFont?' to 'Any' does not unwrap optionally
    • Provide a default value to avoid this
    • предупреждение Принудительно разверните значение, чтобы избежать этого предупреждения
    • Явное приведение к «любому» с «как любой», чтобы отключить это предупреждение.

person rishu1992    schedule 30.10.2019    source источник
comment
Что такое self.userBioTextLabel? Это IBOutlet? Если это так, посмотрите на stackoverflow.com/questions/55422914/   -  person Larme    schedule 30.10.2019
comment
Отвечает ли это на ваш вопрос? Почему IBOutlets являются необязательными после быстрой миграции 5   -  person Larme    schedule 30.10.2019
comment
@IBOutlet слабая переменная userBioTextLabel: UILabel!   -  person rishu1992    schedule 30.10.2019


Ответы (1)


Вероятно, это из-за вашего userBioTextLabel . Вы объявили его необязательным? Если это так, вы можете принудительно развернуть его, в строке объявления выхода или там, где вы сначала определили его в своем коде, чтобы исправить предупреждение.

person MohyG    schedule 30.10.2019