Básicamente, aquí está mi vista de jerarquía (y yo appologize si esto es difícil de leer ... Soy nuevo aquí lo que la publicación sugerencias felizmente aceptadas)toques de Desactivar el fondo UIView modo que los botones de vistas inferiores se puede hacer clic
--AppControls.xib
------- (UIView) ControlsView
----------------- (UIView) topbar
--- -------------- -------------- btn1, btn2, btn3
--------------- - UIView) BottomBar
----------------- - ------------- slider1 btn1, btn2
--PageContent.xib
----------------- (UIView) ContentView
- ---------------- -------------- btn1, btn2, btn3
------------- ---- -------------- (UIImageView) FullPageImage
Mi situación es que quiero para ocultar y mostrar los controles al tocar cualquier parte de la PageContent eso no es una y muestran los controles, al igual que el reproductor de video de iPhone. Sin embargo, cuando se muestran los controles, todavía quiero poder hacer clic en los botones del contenido de la página.
Tengo todo esto funcionando, excepto el último bit. Cuando los controles muestran el fondo de los controles, recibe los eventos táctiles en lugar de la vista a continuación. Y al desactivar la interacción del usuario en el ControlsView, se desactiva en todos sus elementos secundarios.
He intentado anular HitTest en mi subclase ControlsView de la siguiente que encontré en un puesto similar:
- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event{
UIView *hitView = nil;
NSArray *subviews = [self subviews];
int subviewCount = [subviews count];
for (int subviewIndex = 0; !hitView && subviewIndex < subviewCount; subviewIndex++){
hitView = [[subviews objectAtIndex:subviewIndex] hitTest:point withEvent:event];
}
return hitView;
}
Sin embargo, en este punto de mi control deslizante no funciona, ni la mayoría de los otros botones, y realmente, las cosas empiezan a ponerse raras.
Así que mi pregunta es en resumen: ¿Cómo dejo que todas las subvistas de una vista tengan eventos táctiles, mientras que el fondo de la supervista no se puede cliquear, y los botones en las vistas a continuación pueden recibir eventos táctiles?
Gracias!
perfecto! Muchas gracias! – averydev
De nada. Luché con este mismo problema durante muchas horas una vez. Feliz de ayudar. –
Por cierto, ¿es esa una manera más o menos propicia para graficar la jerarquía de visualización? ¿O hay una práctica estándar? – averydev