質問: swiftでアプリを作っております。 初期の段階で、現在、以下のようなstoryboardがあります。 ・Main.storyboard ・listViewController.storyboard Main.storyboardの中はデフォルトの状態で、最初からあるViewController.swiftのファイルを参照されております。 そのViewController.swiftでは、コードでレイアウトを生成しております。 今回やりたいこととしましては、ViewController.swiftから、listViewController.storyboardに遷移できることです。 storyboardの作成方法は以下を参照しました。 http://dev.classmethod.jp/smartphone/iphone/remind-storyboard/ ※できれば、segueを使わず、一画面毎に一つのstoryboardを作りたいです。 以下のコードでいうと viewDidLoadの中に、Ctrl + ドラッグでボタンオブジェクトをlistViewControllerクラスへ紐付けようとしました。 しかし、ひも付けができませんでした。 (青い線みたいなのが伸びて、ひも付きそうだったのですが、viewDidLoadの中でコードが生成されませんでした。) ``` import Foundation import UIKit class listViewController: UIViewController { override func viewDidLoad() { } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() } // override func numberOfSectionsInTableView(tableView: UITableView) -> Int { // return 1 // } } ``` 何か、操作を誤ってしまったのでしょうか? エラーが出力されるわけではありませんため、よくわかりませんでした・・・。 曖昧な感じで申し訳ありませんが、 宜しくお願いします。 当該storyboardのキャプチャ ![](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/dd5f0cd621d5eea57adcfeb17ace8cc1.png)
回答: エラーがでるとパニックになってどうすればいいのかわからなくなりますよね。。 一つずつ潰していきましょう(・∀・) 継承を間違っている可能性がありますね。。 qaz3330さんが上げていただいたコードは`UIViewController`を継承した`listViewController`クラスを作っています。 しかし、storyboardでのキャプチャを見た限り、`UITableViewController`を継承した`ListViewController`を指定しています。 残念ながら継承しているViewControllerが違います。('UIViewController'と'UITableViewController') 名前も違います('listViewController'と'ListViewController')(Swiftは大文字小文字区別します。) Storyboardに合わせるならコードをいかに変えればエラーはなくなると思います。 下記のコードは'UITableViewController'を継承した'ListViewController'クラスを作っています。 ``` import Foundation import UIKit class ListViewController: UITableViewController { override func viewDidLoad() { } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() } // override func numberOfSectionsInTableView(tableView: UITableView) -> Int { // return 1 // } } ```