我有个问题。我正在使用three20并且正在使用TTYoutubeView,我认为这个问题不一定需要知道three20来解决。
我的问题是,我的导航栏上有一个自定义 drawMethod,但是,当我加载 youtube 视频时,我需要告诉它忽略我的自定义绘制方法(这不是问题,我有一个全局 BOOL 可以做到这一点)。
我的问题是,我无法检测到 youtube 视频何时加载,它是通过 UIWebview 中的对象启动的,所以没有 UITouches 可以捕捉,而且我不喜欢子类化 UIWebview,因为在 youtube 视频之后被解雇了,我也没有办法抓住这个。
我需要的是一种方法,每当我的导航栏被绘制时都会询问“当前 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 似乎不太准确)