紺屋高尾

ぬしの女房はんに、わちき、なりたいんざます。来年三月十五日、年季(ねん)が明けるんざます。そのときは眉毛落として歯に鉄漿(かね)染めて、ぬしの傍に参りんすよって、お内儀(かみ)さんにしてくんなますか?

ProMotionのScreenについて

RubyMotionのお勉強の一環で、ProMotionをお勉強しようとしたら数時間悩んだ話。 結論からいうと、 Gemfileにgithub指定して最新版を入れましょう ね。

ProMotionのScreenでnav_varを使おうとするとndefined methodnav_bar' for RootScreen:Class (NoMethodError)`と怒られる。 ソースはこんな感じ。

class RootScreen < PM::Screen
  title "Root Screen"
  nav_bar true

  def on_load
    set_nav_bar_button :right, title: "Help", action: :open_help_screen
  end

  def open_help_screen
    open HelpScreen
  end
end

三行目の部分ですね。 結論からいうと、この書き方はversion 2.5.0beta1からっぽい。 Gemfilieにgithub: 'infinitered/ProMotion'を指定せず、普通に書いてBundle Installしてインストールされるバージョンではこの記法は使えない :(

なので

gem 'ProMotion', github: 'infinitered/ProMotion'

としてあげませう。