UIScrollView evita toques Comienza, toques Movido, toca Terminado en el controlador de vista

Estoy manejando toques para un par de mis componentes de la interfaz de usuario en mi controlador de vista (subclase personalizada de UIViewController). Tiene métodostouchesBegan:withEvent:, touchesMoved:withEvent: ytouchesEnded:withEvent:. Estaba funcionando bien. Luego agregué una vista de desplazamiento (UIScrollView) como la vista superior en la jerarquía.

Ahora mis controladores táctiles en el controlador de vista no funcionan. No los llaman. Lo interesante es que tengo varios otros componentes de UI dentro de la vista de desplazamiento que funcionan. Algunos son botones, algunos son vistas personalizadas que definen su propiatouchesBegan:withEvent:, etc. Lo único que no funciona son los controladores táctiles en el controlador de vista.

Pensé que tal vez se deba a que la vista de desplazamiento está interceptando esos toques para sus propios fines, pero subclasifiqué UIScrollView y solo para ver si podía hacerlo funcionar, estoy regresandoYES siempre detouchesShouldBegin:withEvent:inContentView: yNO siempre detouchesShouldCancelInContentView:. Todavía no funciona.

Si hace una diferencia, mi controlador de vista está dentro de un controlador de barra de pestañas, pero no creo que sea relevante.

¿Alguien ha tenido este problema y tiene una solución lista? Mi conjetura es que la vista de desplazamiento sube por la cadena de respuesta. ¿Puedo devolverlo? Supongo que si no puedo resolver nada más, haré que la vista de nivel superior debajo de mi vista de desplazamiento sea una vista personalizada y reenviaré los mensajes al controlador de vista, pero parece muy torpe.

Respuestas a la pregunta(5)

Su respuesta a la pregunta