Waarom zoomen in UIWebview werkt niet in iOS5?

Ik heb gedelegeerde voor scrollview geïmplementeerd in webweergave. Sinds iOS 5 reageert de standaard scrollview niet meer op de didZoom-gebeurtenis. Waarom is dit gedrag?

3

1 antwoord

Het UIWebView-object in iOS heeft een scrollview-object dat werd weergegeven vanaf iOS5 met webView.scrollView-eigenschap. Eerder was webView de afgevaardigde van de scrollview. Sindsdien is iOS5 webView gedelegeerd voor sommige methoden en is scrollview gedelegeerd voor andere methoden.

-(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];
   }

}

Natuurlijk is dit slechts een hack en geen perfecte oplossing.

1
toegevoegd