2009-07-27 8 views

Respuesta

12

iOS 5.0 en adelante partida, ahora se puede personalizar el comportamiento de desplazamiento de UIWebView accediendo a la propiedad 'ScrollView' para lograr la funcionalidad deseada:

[webView.scrollView flashScrollIndicators]; 
+2

Esta debería ser la respuesta aceptada – toddg

2

No hay una forma real de hacerlo mediante una API publicada; sin embargo, creo que en este caso está bien adivinar la subvista UIScrollView, siempre y cuando se asegure de que la aplicación no se cuelgue si no puede encontrar el UIScrollView:

UIView* scrollView = [webView.subviews objectAtIndex:0]; 
if ([scrollView isKindOfClass:[UIScrollView class]) { 
    [((UIScrollView*)scrollView) flashScrollIndicators]; 
} else { 
    // If Apple changes the view hierarchy you won't get 
    // a flash, but that doesn't matter too much 
} 

EDIT: lo anterior no funcionará porque la primera vista secundaria de un UIWebView es un UIScroller, no un UIScrollView (mi memoria podría estar jugando trucos en mí). Tal vez intente lo siguiente?

UIView* uiScroller = [webView.subviews objectAtIndex:0]; 
if ([uiScroller respondsToSelector:@selector(displayScrollerIndicators)]) { 
    [((UIScrollView*)uiScroller) performSelector:@selector(displayScrollerIndicators)]; 
} else { 
    // If Apple changes the view hierarchy you won't get 
    // a flash, but that doesn't matter too much 
} 
+0

UIWebView no tiene "UIScrollView" subvista Se solo tiene la subvista "UIScroller" Y UIScroller no tiene el método flashScrollIndicators (( – oxigen

+0

¿Siempre ha sido así?) Me parece recordar que esto funciona en iPhone OS 2.x. –

+4

no lo aprobará ya que UIScroller es API privada – stigi

Cuestiones relacionadas