2017-05-10 11 views
0

まず、私は、プロトコルを有しますこのクラスのUI部分MainTableViewControllerは、Main.storyboardで定義されていました。スウィフト3ジェネリック型の使用

let kMainTableViewControllerIdentifier = "MainTableViewController" 
let listController = (self.storyboard.instantiateViewController(withIdentifier: kMainTableViewControllerIdentifier) as? MainTableViewController<Post>)! 
listController.dataSourceType = .post 

と私はいくつかのエラーだ:

Unknown class _TtC5Elias23MainTableViewController in Interface Builder file. 
Could not cast value of type 'UITableViewController' (0x1af463db8) to 'Elias.MainTableViewController<Elias.Post>' (0x101907af8). 

Could not cast value of type 'UITableViewController' (0x1af463db8) to 'Elias.MainTableViewController<Elias.Post>' (0x101907af8). 

を私はこれまでこの問題を解決する方法についてのアイデアを持っていません。私はいくつかの助けが必要です。

+0

私はXcodeでこれを設定しようとしてきたが、私は、コンパイラからセグメンテーションフォールトを取得していますので、私は私が提案することを約てるかをテストすることができていません。私はあなたのストーリーボードのビューコントローラのクラスを 'MainTableViewController 'または 'MainTableViewController 'に設定する必要があるかもしれないと思います。 –

+0

@GaryMakin thx。しかし、私はMainTableViewController 'から' '一部を意味し、一般的なタイプを使用しています' '' または '' 彼らは 'に確認された場合ContentList'プロトコルのように、異なる可能性があります。 –

+0

これ以上考えてみると、あなたがしたいことができるかどうかはわかりません。 View Controllerのインスタンスには、このタイプまたは特定のタイプではなく、特定のタイプが必要です。 –

答えて

1

あなたのView ControllerがストーリーボードのMainTableViewControllerとしても定義されていることを確認してください!

enter image description here

+0

はい私はこれを持っています。 –

関連する問題