TableViewの勉強04〜セルからViewへの遷移がうまくいかない。。。

ここ3,4日ほどずっと引っかかっている。
うまくいってから書こうかと思っていたが、問題になっていることも勉強の過程として残しておくことにした。

問題

ビルド成功->シミュレータ起動すると、アプリが起動する前にUIApplivcationMainでブレークするエラーになって起動に失敗する。

参考にしたページ

StoryBoardを使ってNavigationController+TableViewController(XCode4.2/iOS5) - たまめも(tech)
豊富なスクリーンショットと細かい手順でわかりやすいチュートリアルになっているのでオススメ。
ここしばらくWeb上の有用なチュートリアルを探しまくっていた自分にとっては、tableview関連でテンプレートを使わないチュートリアルとしては一番の内容だった。

原因予想

上記手順のなかで、ひとつだけXcode4.4とは仕様が違う部分があったのでそこか?

「TableViewControllerのクラスを作成」する部分で、「UIViewController subClassを選び」とあるが、
Xcode4.4ではUIViewController subClassは存在せず選択できなかったため、仕方なくベースとなる追加ファイルのクラスにObjective-C classを選んだ。

これくらいしか思いつかない。ほかはすべて手順通りにしたはず。

他のページもいろいろ調べて、
iOS Table View入門 #1 | DevelopersIO
とかあったけど、Xcode4.2のときのものらしく、上記参考にしたページと内容は大差なかった。

現状および調査/試行した内容について

動的にセルを生成して、かつ、動的に生成したセルからの画面遷移ができていない。
(セルのプロパティをDynamicにした場合の画面遷移ができていない)

逆に、Storyboard上でセルを静的に作成するStatic cellという作り方はすぐにできた。
参考:Static Cells で楽々UITableViewプログラミング - 職業プログラマの休日出勤

また、プロジェクト新規作成時に「Master-Detail Application」を選んで、すでに用意されたテーブルビューから詳細ビューへ遷移する方法もうまくできた。

ただ、動作が確認できたStatic cellの方法も、テンプレートを使う「Master-Detail Application」を使う方法も、汎用性・拡張性に欠けるためできるだけ使わずにすませたい。

  • 前者は、Storyboardからしかセルの増減が設定できなかったりするし、後者はあらかじめ用意されていたテンプレートがまず存在するのでViewを追加するのに不便であるため。

動的にセルを生成して、動的にそのセルから別ビューに遷移するほうが、汎用性・拡張性の余地があるので望ましい。

今後

最初からこだわりすぎるとよくないので、少し時間をおいてまた調査したい。
TableViewを使ったセルからの画面遷移のような基本動作は、Titanium mobileで作れるならそちらで作ったほうが学習効率がよさそうなので、そちらに目を向けて学習を続ける。