我已经在webview中实现了scrollview的委托。由于iOS 5默认的scrollview不再响应didZoom事件。为什么会这样?
答案 0 :(得分:1)
iOS中的UIWebView对象有一个scrollview对象,该对象从iOS5开始使用webView.scrollView属性公开。以前,webView是scrollview的委托。因为,iOS5 webView是一些方法的委托,而scrollview是其他方法的委托。
-(void) scrollViewDidZoom:(UIScrollView *)scrollView
{
if ([self->oldScrollViewDelegate respondsToSelector:@selector(scrollViewDidZoom:)])
{
//NSLog(@"forwarding scrollViewDidZoom");
[self->oldScrollViewDelegate scrollViewDidZoom:scrollView];
}
else if ([self.webView respondsToSelector:@selector(scrollViewDidZoom:)])
{
//NSLog(@"forwarding scrollViewDidZoom");
[self.webView scrollViewDidZoom:scrollView];
}
}
当然这只是一个黑客而不是完美的解决方案。