2013-01-16Storyboardで作成したStaticCellsのCellのインスタンスを取得していじるこんにちは。すっごい簡単なこと書きます。簡単なことだけど、躓く人もいると思うから。ちなみに、ちょっと検索した所つまずいている人発見しました。ちなみに僕も最初つまずきました。わかればまぁ当たり前のことなんですけどね。調べないでいきなりやるからつまずくんですね。StaticCellsのセルのインスタンスを取得するには、InterfaceBuilderからピーッと線をhかmファイルまで引っ張れはUIViewなどと同じく参照が取れます。StaticCellsの便利さをアピールしながらこの辺りを説明してみたいと思います。プロジェクトを作成します。Applicationにしてみました。UITableViewControllerを継承したテーブルビューコントローラを作成します。UITableViewDataSource関連のコードをすべてコメントアウトします。使いません(使ってもいいですが)。Storyboardにテーブルビューコントローラを追加します。遷移したあとの戻りが楽なのでナビゲーションコントローラに乗せました。Cellsを選択します。Cellsからピーとmファイルまで線を伸ばします。僕はmファイルに伸ばしていますが、hファイルに伸ばしてもほぼ同じです。セルのインスタンスを参照する変数ができました。この変数をいろいろ操作すれば自由にセルをいじれます。今回の例ではとりあえずviewDidLoad:の中でいじってみました。9番のところで少し書きましたが、殆どコードを書かず画面の遷移が幾つもあるアプリが出来ました。うまくやれば、ほとんどコードを書かずに簡単なアプリなら出来ちゃいそうですね。一応タイトルのインスタンスを取得する流れを入れていますが、それは持ちろんやる必要がなければやらなくてもOKです。Builder側で作成出来ます)。Builder側のCustomClassに入れれば、そのクラスのセルのインスタンスが取得出来ます。ちなみに、今回これをStaticCellsでこれをやりたかった理由は、自作セルの自作メソッドを動かしたかったからでした。普段は設定ビューをStoryboardにしてによく使いますねー。Githubを使いたいという目的もあり、今回のコードをGithubにあげてみました。詰まった方は参考にしてみてください。デフォルトのプロジェクトにExampleViewControllerのみ追加して、ExampleViewControllerとStoryboardしかいじっていません。ExampleViewControllerの中の不要なコードは削除してあります。コメントデータの処理方法の詳細はこちらをご覧ください。