J'essaye d'intégrer Swift code de mon application.Mon application est écrite en Objective-C et j'ai ajouté un Swift de la classe. J'ai fait tout ce qui est décrit ici. Mais mon problème est que Xcode n'avez pas créé l' -Swift.h
le fichier, seule la transition des en-têtes. Donc je l'ai créé, mais c'est en fait vide.
Je peux utiliser tous mes ObjC classes dans Swift, mais je ne peux pas vice versa. J'ai marqué mon swift classe avec @objc
, mais il n'a pas aidé. Que puis-je faire maintenant?
EDIT: Apple dit:" Lorsque vous importez Swift code en Objective-C, vous pouvez compter sur un Xcode généré fichier d'en-tête afin de dénoncer ces fichiers à l'Objective-C. [...] Le nom de cet en-tête est votre produit nom du module suivi par l'ajout de "-Swift.h". "
Maintenant, quand je veux importer ce Fichier, il donne une erreur:
//MainMenu.m
#import "myProjectModule-Swift.h" //Error: 'myProjectModule-Swift.h' file not found
@implementation MainMenu
Voici mon FBManager.swift fichier:
@objc class FBManager: NSObject {
var descr = "FBManager class"
init() {
super.init()
}
func desc(){
println(descr)
}
func getSharedGameState() -> GameState{
return GameState.sharedGameState() //OK! GameState is written in Objective-C and no error here
}
}