2010-09-27 5 views

Répondre

7

essayer ...

UIView * v = [[webView subviews] lastObject]; 
[v setScrollEnabled:NO]; 
[v bounces:NO]; 

EDIT: chèques à réponse originale Ajouté à base de commentaire ci-dessous

UIView * v = [[webView subviews] lastObject]; 
if([v isKindOfClass:[UIScrollView class] ]) { 
    if ([v respondsToSelector:@selector(setScrollEnabled]) { 
     [v setScrollEnabled:NO]; 
    } 
    if ([v respondsToSelector:@selector(bounces)]) { 
     [v bounces:NO]; 
    } 
} 
+0

Ceci est une très mauvaise idée. La hiérarchie des vues internes de 'UIWebView' peut changer à n'importe quelle mise à jour du système d'exploitation. Vérifiez au moins si la sous-vue répond à ces méthodes avant de les appeler. – rpetrich

+0

pouvez-vous expliquer ce que cela signifie? est lastObject l'élément ? – Melina

+0

@Melina la dernière sous-vue de l'UIWebView, @rpetrich a ajouté la vérification, thx –

1

En utilisant @ aaron-et @ réponses saunders de mat rix, Voici ce qui fonctionne le mieux pour moi:

UIView *v = [[webView subviews] lastObject]; 
if([v isKindOfClass:[UIScrollView class]]) 
    [v setScrollEnabled:NO]; 
2

Vous pouvez également accéder à la scrollView lik e ceci:

webView.scrollView.scrollEnabled = false; 
webView.scrollView.bounces = false; 
0

Pas besoin d'utiliser des méthodes complexes. Vous pouvez accéder à Scrollview of webview directement comme ci-dessous.

web_view.scrollView.scrollEnabled = NO;