RubyMotionで開発しているときiPhone(iPad) Simulator上をCommand+クリックするとコンソールのREPLにクリックしたViewクラスがselfになってインスタンスの状態を見たいときに便利ですね。
ところがUIWebViewを表示してるときにクリックするとUIWebBrowserViewクラスのインスタンスがselfになってしまう。
self
=> #<UIWebBrowserView:0xa8f0e00>
self.delegate
=> nil
delegateしているUIViewControllerのサブクラスにアクセスしたい(・ω・)
AppDelegateから辿るという手もありますが構成によっては遠いのでめんどくさい。
self.methodsをチェックしていくとmpAncestorViewController
というのを発見。
アクセスしてみると…
self.mpAncestorViewController
=> #<WebViewController:0x7d90030>
(σ・∀・)σゲッツ!!