J'ai une classe partagée par iOS et OSX. Après la mise à niveau Swift 3, la ligne de code suivante:Pourquoi Swift 3 traite-t-il NSString différemment pour OSX et iOS?
let textSize = ("999" as NSString).size(withAttributes: [NSFontAttributeName:labelFont!])
... provoque l'erreur suivante pour une version iOS:
étiquette argument incorrect dans l'appel (ont 'withAttributes:', attendu ' les attributs:').
fixe comme suit:
let textSize = ("999" as NSString).size(attributes: [NSFontAttributeName:labelFont!])
Mais la construction OSX a l'erreur:
étiquette argument incorrect dans l'appel (ont 'attributs:', attendus 'withAttributes:')
Pourquoi NSString est-il traité différemment pour les versions iOS et OSX?
(Je travaille autour de cela en utilisant des extensions. Tout autre code partagé a converti avec succès à Swift 3.)