2012-06-13 12 views

Respuesta

19

Poner en práctica estos dos métodos de delegado ..

- (void)scrollViewDidScroll:(UIScrollView *)sender{ 
    //executes when you scroll the scrollView 
} 

- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView { 
// execute when you drag the scrollView 
} 
+1

para las nuevas personas (yo) pueden necesitar para declarar delegar vista de desplazamiento para obtener el código anterior para trabajar -> '@interface ViewController: UIViewController ' // (gracias Shorhashi) – tmr

+1

"se ejecuta al desplazarse por la vista de desplazamiento" - no es del todo cierto, si el usuario es "usted". Moviendo programáticamente la vista de desplazamiento llamará 'scrollViewDidScroll:' también. – Jonny

7

alternativa a @ solución de Shorhashi:

- (void)scrollViewDidScroll:(UIScrollView *)sender{ 
    if(sender.isDragging) { 
     //is dragging 
    } 
    else { 
     //is just scrolling 
    } 
} 
+0

Esta no es la respuesta. Cuando levante su dedo de la pantalla, si todavía está SÍ, esto puede no ser lo que espera. – ideawu

4

Mejor uso isTracking

func scrollViewDidScroll(_ scrollView: UIScrollView) { 

    if scrollView.isTracking == true { 
    // ... 
    } 
} 
Cuestiones relacionadas