J'ai une extension dans Swift qui contient des propriétés qui sont CGFloat
. Le problème est que je ne sais pas comment le magasin la valeur CGFloat
comme NSNumber
en utilisant les objets associésConvertir CGFloat en NSNumber dans Swift
Voici le code que j'ai cela ne fonctionne pas, mais il détaille ce que je veux faire:
var scaledFontSize: CGFloat {
get {
guard let fontSize = objc_getAssociatedObject(self, &AssociatedKeys.scaledFontSize) as? NSNumber else {
//Set it
let scaledFont:CGFloat = VGSizeValues.getValueFromValue(self.font.pointSize);
//Fails here
objc_setAssociatedObject(self,&AssociatedKeys.scaledFontSize, NSNumber(scaledFont),objc_AssociationPolicy.OBJC_ASSOCIATION_RETAIN_NONATOMIC)
return scaledFont;
}
return CGFloat(fontSize.doubleValue);
}
}
Est-ce que quelqu'un peut contourner ce problème?
laisser floatInNumber = NSNumber (float: flotteur (floatValue)) –