Tengo varias UIWebView personalizadas como subvistas dentro de un UIScrollView. Implementé los métodos táctiles dentro del UIViewController para UIWebView, pero no se están llamando a estos métodos.dentro de UIViewView UIScrollView consume eventos táctiles
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { }
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event { }
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event { }
He leído en otros lugares y dice que el UIScrollView consumirá los eventos. Esto tiene sentido, pero ¿el UIWebView no debe recibir el evento táctil antes de UIScrollView? Lo que probablemente está sucediendo es que UIWebBrowserView (una subvista de UIWebView) está consumiendo los eventos. Sin embargo, esta clase no se puede subclasificar, por lo que no puedo enviar los eventos en la cadena de supervistas a UIScrollView. He leído en la documentación de Apple iOS que uno nunca debería colocar un UIWebView dentro de un UIScrollView, pero tengo que hacerlo para mis propósitos.
Así que mi pregunta es: ¿cómo pueden mis UIWebView personalizadas (que son subvistas de un UIScrollView) recibir eventos táctiles?
Mis controladores y vistas están configurados de la siguiente manera:
HomeViewController.h /.m /.xib
HomeView.h /.m (is a UIScrollView)
DashboardViewController.h /.m /.xib (custom UIWebView's)
HomeViewController se carga desde un archivo de plumilla que contiene una vista personalizada: Homeview. DashboardViewController se carga desde un archivo Nib. Contiene algunas etiquetas, controles deslizantes, etc. (tenga en cuenta que no hay una vista personalizada aquí - No estoy subclasificando UIView aquí).
HomeViewController carga dinámicamente varios controles DashboardViewControllers y agrega su vista al HomeView.
DashboardViewController *dashboardViewController = [[DashboardViewController alloc] initWithNibName:@"DashboardViewController" bundle:[NSBundle mainBundle];
[homeView addSubview:dashboardViewController.view];
Sí, mi delegado de vistas está conectado al propietario del archivo. ¿Qué quieres decir con vincular mi Vista al Controlador? Además, conecté la subclase UIScrollView como la vista principal para el Controlador. Ver mi publicación actualizada; He agregado más información que podría ayudar. Gracias. – mdupls
Esta solución no funciona, ya que UIWebBrowserView (no UIWebView) parece captar los eventos táctiles. Sin embargo, esta clase no se puede subclasificar para alterar la funcionalidad. – mdupls