J'ai une vue dérivée d'un contrôleur UIScrollView que j'utilise pour parcourir des images dans une bibliothèque. Cela fonctionne bien.Passer des contacts via un UIView vers un UIScrollView ne fonctionne pas
J'ai superposé un UIView sur le côté droit pour manipuler des touches pour défiler rapidement dans la liste des images. Mon problème est que si je passe le contact à 'super' ou 'nextResponder' ils ne le font jamais à l'objet UIScrollView ci-dessous.
Ma question est comment puis-je forcer l'UIScrollView ci-dessous pour gérer les touches que je n'ai pas besoin de gérer? Je suis en train de régler une minuterie pendant 0,3 secondes que pendant ce temps toutes les touches sont passées à l'UIScrollView à gérer. Donc, si l'utilisateur a commencé un geste de glisser pour tourner la page, cela arrivera.
Voici le code de la méthode touchesBegan:
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
[super touchesBegan:touches withEvent:event];
// Start a timer to trigger the display of the slider and the processing of events.
touchesTimer = [NSTimer scheduledTimerWithTimeInterval:0.3 target:self selector:@selector(showSlider:) userInfo:nil repeats:NO];
// Where are we at right now?
UITouch *touch = [touches anyObject];
CGPoint currentPoint = [touch locationInView:self.view];
lastPage = [self page:currentPoint.y];
// Pass the event though until we need it.
// [self.nextResponder touchesBegan:touches withEvent:event];
if ([touch.view isKindOfClass:[UIScrollView class]])
{
if (self.nextResponder != nil &&
[self.nextResponder respondsToSelector:@selector(touchesEnded:withEvent:)])
{
[self.nextResponder touchesEnded:touches withEvent:event];
}
}
}
Je pense que je pourrais avoir compris ce qui pourrait aller mal. Étant donné que le curseur sur le côté droit ne couvre pas tout l'écran, les coordonnées des événements tactiles ne sont pas correctes. Je vais essayer d'augmenter la taille de la vue et le filtrage par emplacement tactile. – Sophtware
Il y a eu une excellente présentation à la WWDC cette année sur les techniques avancées de scrollview. Vous voudrez peut-être passer une heure à regarder ça. Cela pourrait vous être d'une grande aide dans cette situation. La vidéo est disponible sur iTunes dans la section iTunes U ou sur le site du développeur Apple. –