RubyMotionアプリでStoryboardを使う(ibを使う)
以前にRubyMotionでStoryboardを使う方法を調べたことがありました。
まあ使えることは使えたんですが、Storyboardとヘッダファイルの結びつけとかできなくて、あまり実用的でないなあ。。という感じでした。
最近になって、そういうモヤっとしたところを解決してくれるgemがあることをこちらで知りました。
第八回 RubyMotion で Interface Builder を使うには?
ということで、こちらで紹介されているibを使ってみました。
ibをインストール後、rake ib:project タスクを実行すると、Storyboard用のXcodeプロジェクトが作成されます。
そして rake ib:open タスクを実行すると、Xcodeが起動してStoryboardが表示されます。
このときに、ibがRubyMotionで実装したOutletやメソッドを自動でStubs.hファイルに展開してくれます。
Outletはoutletクラスメソッドで宣言的に書きます。(下記参照)
メソッドはIBActionになります。
具体的には、このように書いておいて rake ib:open を実行すると、
|
Stubs.hにはこんな感じで展開されるわけです。
|
あとはStoryboardからStubs.hにビーッと線を伸ばして紐付けをしてあければよいわけです。
やっぱりStoryboardを使うとビューのコードがググっと減るので便利ですね。全体構成もつかみやすくなるし。
これからはibを使っていこうと思ってます。