setValue:forUndefinedKey: этот класс не соответствует кодированию значения ключа для полужирного цвета ключа в iOS 12

#ios #swift

Вопрос:

У меня есть эта пользовательская метка, которую я использую в своем приложении, но когда я запускаю свое приложение на устройствах ios 12, оно вылетает с этой ошибкой NSUnknownKeyException', reason: '[lt;EFontRegular 0x10999e050gt; setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key boldColor , но отлично работает в ios 13 и выше. Любая помощь будет оценена по достоинству. Все остальные решения в Интернете не работали для меня

 @IBDesignable final class EFontRegular: BaseUILabel {  override var fontType: UIFont? {  return UIFont(name: EFontConstant.Name.regular.rawValue, size: fontSize)  } }  
 @IBDesignable class BaseUILabel: UILabel {    @IBInspectable var fontSize: CGFloat {  return self.font.pointSize  }    @IBInspectable var fontType: UIFont? {  return UIFont(name: EFontConstant.Name.regular.rawValue, size: EFontConstant.Size.regular.rawValue)  }    @IBInspectable var stringToColor: String = "" {  didSet {  let alignment: NSTextAlignment = alignCenter ? .center : .left  attributedText = text?.lineSpacedWithInlineColor(lineSpacing, alignment, stringToColor: stringToColor)  }  }    @IBInspectable var boldColor: UIColor {  traitCollection.userInterfaceStyle == .light ? .black : .white  }    @IBInspectable var stringToBold: String = "" {  didSet {  let alignment: NSTextAlignment = alignCenter ? .center : .left  attributedText = text?.lineSpacedWithInlineColor(lineSpacing, alignment, stringToColor: stringToBold, color: boldColor, bold: true, boldTextSize: fontSize)  }  }    override init(frame: CGRect) {  super.init(frame: frame)  commonInit()  }    required init?(coder aDecoder: NSCoder) {  super.init(coder: aDecoder)  commonInit()  }    override func prepareForInterfaceBuilder() {  super.prepareForInterfaceBuilder()  commonInit()  }   }  

Комментарии:

1. «этот класс не соответствует кодированию значения ключа для ключа ___» ошибки часто возникают, когда у вас есть раскадровка со ссылкой на свойство, которое не существует в классе, на который оно ссылается. Я предлагаю поискать в ваших файлах раскадровки вхождения «жирного цвета».

2. Сделав это, классы с выделенным жирным цветом даже не имеют прикрепленных к ним раскадровок. Кроме того, он работает для ios 13 и выше