Ausgabe
Ich habe ein Projekt, das in Objective-C gestartet wurde, und ich versuche, Swift-Code in dieselben Klassendateien zu importieren, in denen ich zuvor Objective-C geschrieben habe.
Ich habe die Apple – Dokumentation zur Verwendung von Swift und Objective-C im selben Projekt sowie SO- Fragen wie diese konsultiert, aber immer noch ohne Erfolg: Ich erhalte nach dem Einfügen weiterhin den Fehler „Datei nicht gefunden“ #import "NewTestApp-Swift.h"
( NewTestApp
ist der Name des Produkts und Modul).
Folgendes habe ich bisher gemacht:
- In
Define Modules
,YES
für die App ausgewählt. - Sichergestellt, dass der Name des Produktmoduls kein Leerzeichen enthält (siehe Screenshot unter der Frage)
Ich habe versucht, #import "NewTestApp-Swift.h"
inside zu verwenden ViewController.m
, aber keiner von ihnen hat funktioniert.ViewController.h
AppDelegate.m
Was mache ich noch falsch? Danke für Ihre Hilfe.
Screenshot der Einstellungen:
Fehler, auf die ich derzeit stoße:
Lösung
Ich hatte das gleiche Problem und konnte mein Projekt nicht dazu bringen, Swift in obj-c-Klassen zu importieren. Mit Xcode 6 (sollte für Xcode 6+ funktionieren) und konnte es auf diese Weise tun ….
- Jede Klasse, auf die Sie in der .h-Datei zugreifen müssen, muss eine Forward-Deklaration wie diese sein
@class MySwiftClass;
- NUR in der .m-Datei, wenn sich der Code im selben Projekt (Modul) befindet, müssen Sie ihn mit importieren
#import "ProductModuleName-Swift.h"
Link zur Apple-Dokumentation darüber
Beantwortet von – Bolnad
Antwort geprüft von – Candace Johnson (FixError Volunteer)