私は問題があります。私はthree20を使用しており、TTYoutubeViewを使用しています。この問題を修正するには、必ずしもthree20の知識は必要ありません。
私の問題は、ナビゲーションバーにカスタムのdrawMethodがありますが、YouTubeビデオをロードするときに、カスタムの描画メソッドを無視するように指示する必要があります(これは問題ではありません。これを実行できるグローバルBOOLがあります) )。
私の問題は、YouTubeビデオがロードされたときに検出する方法がないことです。これは、UIWebview内のオブジェクトを介して起動されるため、UITouchがキャッチできず、YouTubeビデオが終わった後のように、UIWebviewをサブクラス化するのが好きではありません。却下されました、私もこれを捕まえる方法がありません。
私が必要としているのは、ナビゲーションバーが描画されるたびに「現在のviewControllerはどのクラスですか」と尋ねるメソッドであり、表示されているものに応じて何を描画するかを指示できます。
NSLog(@"%@",[TTNavigator navigator].topViewController);
NSLog(@"%@",[TTNavigator navigator].visibleViewController);
drawメソッドでviewControllersをログアウトしています。これは完全に機能し、コードは次のようにログに記録されます。
2010-09-08 16:39:23.171 MyApp[3512:307] <HomeController: 0x264df0>
2010-09-08 16:39:23.174 MyApp[3512:307] <HomeController: 0x264df0>
問題は、YouTubeビデオが読み込まれるときに、modalViewControllerが読み込まれているように見えることですが、私のコードは、このmodalControllerの下にあるviewControllerを引き続きログアウトします。何が一番上にあるかはわかりません。
viewControllerを検出することは、私が考えたときは明るい火花のように見えましたが、それでも私にとっては良い考えです。現在どのビューが一番上にあるかをどのように見つけることができるかについて、私はちょうど途方に暮れています。(topViewControllerとvisibleViewControllerはこれを正確に行っていないようです)