Sto integrando il codice Swift in un grande progetto Objective-C, ma sto incontrando problemi quando il mio codice Swift fa riferimento alle classi Objective-C. Ad esempio, supponiamo di avere:Come posso aggiungere i riferimenti alle classi utilizzati nell'intestazione -Swift.h?
- Una classe Objective-C chiamato
MyTableViewController
- Una classe Objective-C chiamato
DeletionWorkflow
ho dichiarato una classe Swift come segue:
class DeletionVC: MyTableViewController {
let deleteWorkflow: DeletionWorkflow
...
}
Se ora provo a utilizzare questa classe importando ProjectName-Swift.h
nel codice Objective-C, ottengo errori di simboli non definiti per entrambi MyTableViewController
e DeletionWorkflow
.
posso risolvere il problema in quel file sorgente individuale mediante l'importazione DeletionWorkflow.h
e MyTableViewController.h
prima di importare ProjectName-Swift.h
ma ciò non scalare fino a un grande progetto in cui voglio che il mio Swift e Objective-C per interagire spesso.
C'è un modo per aggiungere i riferimenti di classe a ProjectName-Swift.h
in modo che questi errori non si verifichino quando provo a utilizzare le classi Swift dal codice Objective-C nella mia app?
Non sarei sorpreso se non risolvessero mai questo. Sembra un problema difficile, non facilmente risolvibile usando tecniche statiche come le intestazioni di bridging. Penso che l'unico modo sarebbe di eliminare completamente il meccanismo di intestazione del bridging e sposare i compilatori Swift e Objective-C più strettamente insieme. – Echelon