Ich habe ein Projekt, das den Swift-generierten Bridging-Header verwendet und das Projekt korrekt eingerichtet hat (keine Leerzeichen in Names, Module verwenden, Swift-Klassen in meiner .mm-Datei vordefinieren, abgeleitete Daten löschen, eine saubere Neuerstellung durchführen) etc...). Der Bridging-Header wird ordnungsgemäß generiert, aber die automatisch generierte -Swift.h-Datei enthält Fehler. Was noch schlimmer ist, sind diese Fehler auf den generierten (in Projekt erstellen - Swift) Versionen von AppDelegate und ViewController, die normalerweise gut kompilieren würden. Die Fehler in der -Swift.h sind:
@interface AppDelegate : UIResponder <UIApplicationDelegate>
@interface ViewController : UIViewController
Ich habe Stack Overflow und das Internet durchsucht und kann keine Antwort finden, die dieses spezielle Problem angeht. Hat jemand anderes das? Oder gibt es eine Möglichkeit, meine AppDelegate- und ViewController-Klassen so zu markieren, dass Xcode nicht Objective-C-Stubs für diese Swift-Klassen erstellt und erstellt, da ich sie nicht wirklich brauche?
Ich hatte das gleiche Problem und entdeckte das ..
-Swift.h funktioniert nur am besten mit Objective-C, nicht mit Objective-C ++ (.mm)
Also verwende ich die Objective-C-Klasse, um eine Verbindung mit der Swift-Klasse herzustellen. Außerdem können Sie immer Ihre Objective-C ++ - Klasse in Ihrer Objective-C-Klasse laden.
Fügen Sie einfach
hinzu %Vor%vor
%Vor%in .mm-Datei. für mich hilft es.
Versuchen Sie, UIKit / UIKit.h in die Überbrückungs-Headerdatei zu importieren.
Tags und Links objective-c ios xcode swift language-interoperability