Estoy queriendo implementar un comportamiento de desplazamiento personalizado, reutilizable y eficiente en una aplicación de iPhone, por lo que extiendo UIScrollView con mi control personalizado y deseo realizar un seguimiento de los movimientos de desplazamiento.Extender UIScrollView y supervisar eventos de desplazamiento
Ahora estoy consciente de que probablemente podría asignar mi control personalizado como UIScrollViewDelegate y responder internamente para scrollViewDidScroll llamadas, pero esto no se siente correcto para mí (puedo estar equivocado).
No parece correcto ya que el delegado está dirigido a la lógica de la IU específica de la aplicación y los controles deben estar a un nivel superior. También significaría que necesitaría retransmitir las llamadas de delegado si una clase de aplicación también se asigna como delegado, lo que parece ineficaz.
Como descendiente directo de UIScrollView yo esperaría que ser capaz de anular el método que hace posible scrollViewDidScroll llamada delegado, o tener acceso a un método de la plantilla, o escuchar a cabo para los eventos de desplazamiento, pero no puede ver ninguna de esas opciones
Mirando el archivo UITableView.h, UITableView no parece erigirse como UISCrollViewDelegate por lo que me pregunto cómo se maneja esto (estoy suponiendo ya que recicla las células se debe realizar un seguimiento su posición relativa a los límites visibles).
Soy bastante nuevo en esta plataforma, así que me puede estar perdiendo algo obvio. Cualquier ayuda apreciada.
¿Alguna vez encontró una buena solución? –
Ejecuté con la implementación de UIScrollViewDelegate al final y delegué dos veces las acciones UIScrollViewDelegate de mi componente personalizado. Creo que la respuesta de Rob a continuación suena en el camino correcto, pero llegó un poco tarde para el trabajo que estaba haciendo, así que no tuve la oportunidad de explorarlo desafortunadamente. –