J'ai un projet existant qui est écrit en Objective-C. Je souhaite utiliser la bibliothèque de cartes iOS de Daniel Gindi , qui se trouve dans Swift, dans ce projet. Comment puis-je atteindre cet objectif?
importer le cadre Swift dans un projet objective-c est lié, mais dans mon cas, je me sers de la bibliothèque en l’installant via Cocoapods comme indiqué ici .
Dans cette question, il est au moins capable d'importer l'en-tête, mais dans mon cas, je ne le peux pas.
étape 1: Créer un projet à vue unique Objective-C.
étape 2: Créez un fichier podfile et ajoutez les lignes suivantes -
use_frameworks!
pod 'Charts'
étape 3: Installez le pod
Étape 4: Essayez d’importer les graphiques dans ViewController.h avec @import Charts
, mais cela donne une erreur à ce stade. L'erreur est - Module Charts not found
Dans mon projet existant, j'ai #include Charts-Swift.h
dans le fichier main.m
de mon projet et cela a résolu le problème. @import Charts
fonctionnait parfaitement maintenant. Cela a été fait en suivant les instructions écrites dans la documentation Apple ici.
J'ai fait un nouveau projet et essayé la réponse d'Anni S , cette fois, j'ai construit le projet avec cmd+B
avant d'écrire une instruction d'importation et cela a également fonctionné. J'imagine qu'il est nécessaire de le construire une fois après avoir installé pod et avant d'importer n'importe quel module.
J'ai essayé la même chose que ce que vous avez mentionné dans le commentaire, mais je ne comprenais pas l'erreur que vous aviez. Mon projet est simplement construit et exécuté. Les étapes que j'ai suivies:
use_frameworks! pod 'Charts'
'pod install'
à partir du terminal.
#import "ViewController.h" @import Charts;
J'ai trouvé la raison pour laquelle cela fonctionne pour un nouveau projet, mais pour un projet existant.
Dans les paramètres du projet, supprimez la valeur de la propriété Other Linker Flags.
C'est le cas le plus fréquenté par la plupart des développeurs.