web-dev-qa-db-fra.com

Le type 'NSAttributedStringKey' (ou 'NSString') n'a pas de membre 'font'

Nous venons de mettre à jour les modules pour xcode 9 et je reçois le message d'erreur ci-dessous pour Cosmos .

 enter image description here

Le type 'NSAttributedStringKey' (ou 'NSString') n'a pas de membre 'font'

37
Chaudhry Talha

Remarque: Assurez-vous que la version linguistique de votre projet est Swift. Voici comment vous pouvez voir/vérifier votre version en langue Swift.

enter image description here


Vous avez deux options comme solution à votre requête:

  1. Si votre projet utilise la version 4.0 rapide
    - Vous devez choisir/télécharger le POD compatible dans la langue Swift de votre projet (partagez-moi les informations sur le POD et la version Swift, afin que je puisse vous fournir la version exacte de la version de pod correspondant à votre projet).

  2. Si votre projet a une version de Swift inférieure à 4.0
    - Vous devez migrer votre projet dans Swift 4.0 (si vous ne l'avez pas migré). Voici la question de référence et la réponse, comment migrer de Swift (ci-dessous) <4.0 à 4.0.


Selon la balise ajoutée par vous dans votre question - Swift3 correspond à la version linguistique de votre projet et au module 'Cosmos', '~> 12.0' prend en charge Swift 4.

pod 'Cosmos', '~> 12.0'

Voici la liste des versions précédentes prenant en charge la version Swift ci-dessous 4.0.

https://github.com/evgenyneu/Cosmos/releases

Essayez la version précédente de cosmos comme: 

pod 'Cosmos', '~> 11.0.3'
// or
pod 'Cosmos', '~> 11.0.1'
// or
pod 'Cosmos', '~> 11.0.0

'

40
Krunal
 attributes: [NSFontAttributeName: label.font]

cela semble aller avec Swift 3.2 . i corrigé avec la bibliothèque viewcontroller du menu de pagination.

19
Ace

Dans mon cas, je remplace ce code 

[NSAttributedStringKey.font : font]

par code ci-dessous

.size(attributes: [NSFontAttributeName : font])

J'espère que ça aide.

14
Avinash Mishra

Vous devez avoir besoin de mettre à jour la version Swift vers la version 4.0 depuis Xcode.

Utilisez l'étape ci-dessous

1) Choisissez votre projet dans le gestionnaire de projet (en haut à gauche de Xcode)
2) Choisissez les paramètres de construction
3) Recherche "langue Swift"
4) Modifier "Version du langage Swift" => Swift 4.0

10
iPatel
let label = UILabel()
label.font = UIFont.preferredFont(forTextStyle: .subheadline)
0
HafizAnser