iphone - bar - Los métodos delegados UIScrollView no se llaman correctamente
swift uisearchbar (5)
Para desplazarme hacia arriba y hacia abajo, necesito llamar a dos métodos para los que he usado el siguiente método. Estoy usando el método delegate UICollection
para UICollection
ya que es la subvista para UIScrollView
Aquí está el código que he escrito, pero el desplazamiento es no se mueve con facilidad y el resultado tampoco es exacto algunas veces ¿alguien puede sugerir?
- (void)scrollViewWillBeginDecelerating:(UIScrollView *)scrollView{
CGPoint mScrollPosition = [scrollView.panGestureRecognizer velocityInView:mCollectionView];
if (mScrollPosition.y > 0.0f){
NSLog(@"going down");
//Action One
mYearHeaderTitle--;
[self.mCollectionView reloadData];
}
else if (mScrollPosition.y < 0.0f){
NSLog(@"going up");
//Action two
mYearHeaderTitle++;
[self.mCollectionView reloadData];
}
}
Puede intentar establecer self.scrollView.delegate
en el objeto que debería actuar como delegado en scrollView.
Utilizar :
-
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
-
- (void)scrollViewDidEndScrollingAnimation:(UIScrollView *)scrollView
En cambio:
- (void)scrollViewWillBeginDecelerating:(UIScrollView *)scrollView
Usa los siguientes métodos:
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
- (void)scrollViewDidEndScrollingAnimation:(UIScrollView *)scrollView
Conecte el delegado para desplazarse por la vista haciendo clic con el botón derecho en la vista de desplazamiento y conéctese al método de delegado al propietario del archivo (o)
scrollview.delegate = self;
Configure su controlador de vista como <UIScrollViewDelegate>
En mi caso, tuve que hacer que mi vista fuera un delegado para UITextViewDelegate y UIScrollViewDelegate. No activaría el método hasta que agregué ambos. Probablemente porque estoy en un EAGLView y no en un viewcontroller.
@interface EAGLView : UIView <UITextFieldDelegate, SDWebImageManagerDelegate, UITextViewDelegate, UIScrollViewDelegate>
Yo también hice lo siguiente:
alertMessage.delegate = self;
Como alertMessage es mi TextView que estoy usando como un rollo de Términos de servicio.