Xcode 7 Swift 2 impossible d'instancier la sous-class UIViewController du générique UITableViewController

J'ai un cours générique:

class PaginatedTableViewController <GenericElement, Source: PaginationDataSource where Source.PaginatedGenericElement == GenericElement>: UITableViewController 

et un autre que j'essaie d'instancier à partir du storyboard:

 class CandidatesTableViewController: PaginatedTableViewController<Match, MatchPaginationDataSource> 

Je ne trouve pas CandidatesTableViewController dans le drop down menu Classe personnalisée du storyboard. Si je le forcerais à transformer mon controller en code, l'application se bloque à l'exécution en se plaignant de mon controller (qui devrait être une instance de CandidatesTableViewController) est en fait une instance UITableViewController.

Classe inconnue _TtC21MyProjectName29CandidatesTableViewController dans le file Interface Builder. Impossible de convertir la valeur de type 'UITableViewController' (0x1040917f8) en 'MyProjectName.CandidatesTableViewController' (0x1013a9890).

Dans mon projet, ce controller est embedded dans un autre, c'est pourquoi je le lance:

 tableViewController = (segue.destinationViewController as! CandidatesTableViewController) 

Est-ce que quelqu'un sait comment résoudre ce problème?

    Malheureusement, les classs Swift generics ne sont pas visibles pour le code Objective-C et ne sont pas non plus sockets en charge dans Interface Builder (dans les storyboards et les xibs). Je trouve ces deux points étroitement liés.

    En tant que solution, je vous suggère d'utiliser l'agrégation: ne vous faites pas voir le controller générique, mais extrayez de la logique vers une autre class (générique) et utilisez-la dans votre controller de vue.

    C'est possible si vous chargez manuellement votre VC générique dans le runtime Objective-C via la méthode load() , c'est-à-dire appelez. PaginatedTableViewController.load() dans la méthode init de votre délégué d'application. Idée de https://stackoverflow.com/a/43896830/671580