我对 iOS 开发相当陌生,对于我的第一个真正的应用程序,我使用 TapDetectingWindow 来检测 UIWebView 上的触摸(与 http://mithin.in/2009/08/26/detecting-taps 上的详细信息完全相同) -and-uiwebview-the-right-way 上的事件)。
我按照建议在一个视图控制器中使用了它,并在头文件中引用了它,并在实现文件中使用了以下内容;
- (void)viewDidLoad {
[super viewDidLoad];
mWindow = (TapDetectingWindow *)[[UIApplication sharedApplication].windows objectAtIndex:0];
mWindow.viewToObserve = igWeb;
mWindow.controllerThatObserves = self;
- (void)userDidTapWebView:(NSArray *)tapPoint {
}
效果非常好。
现在的问题是我想在第二个视图控制器中使用 TapDetectingWindow。
我从第一个视图控制器复制了相同的代码(仅更改了 viewToObserve 的名称)。
现在,当我运行该应用程序时。点击检测窗口在第一个视图控制器中工作正常,然后当您转到第二个视图控制器时工作正常,但当您返回第一个视图控制器时,它会损坏,直到视图再次加载。
请帮忙。
尝试类似的事情
-(void)viewWillAppear:(BOOL)animated
{
mWindow.controllerThatObserves = self;
[super viewWillAppear:animated];
}