Pregunta

Estoy codificación de una aplicación que funciona de manera similar Weather.app de Apple: Hay una UIPageControl en la parte inferior y una UIScrollView en el centro de la pantalla. En mi código, he implementado el método - (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView de averiguar cuando el usuario se movió a una nueva página. Si se mueven a una nueva página, me carga los datos de las páginas adyacentes, como para hacer más rápido el cambio de página. (En uno de los ejemplos de Apple, se utiliza el - (void)scrollViewDidScroll:(UIScrollView *)sender, pero eso hace que mi aplicación para colgar en breve cuando se carga una nueva página, así que no es apropiado.) Ese código funciona muy bien.

Estoy usando scrollRectToVisible:: para desplazarse dentro de la programación ScrollView cuando el usuario hace clic en el UIPageControl. El problema es que el scrollRectToVisible: no envía una notificación al UIScrollViewDelegate cuando se hace scroll -. Por lo que el código responsable de cargar las páginas adyacentes nunca se llama cuando se usa el UIPageControl

¿Hay alguna manera de hacer que el UIScrollView notificar su delegado cuando se llama por el método scrollRectToVisible:? O voy a tener que hilos de uso con el fin de evitar que se congele mi aplicación?

Gracias!

- Ry

¿Fue útil?

Solución

¿Qué hay de -scrollViewDidEndScrollingAnimation: ?

Si no funciona, trate de escuchar a la notificación UITextSelectionDidScroll. (Por supuesto, es indocumentado.)

Como alternativa, un método SDK de fallos es medir el tiempo que tarda la animación y enviar una notificación de retraso en el sitio llamado de -scrollRectToVisible:.

Otros consejos

Se podría añadir este método delegado en lugar:

- (void)scrollViewDidEndScrollingAnimation:(UIScrollView *)scrollView

La vista de desplazamiento llama a este método al final de sus implementaciones de la UIScrollView y setContentOffset: Animación: y scrollRectToVisible: animación:. Métodos, pero sólo si se solicitan animaciones

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top