2010-12-06 6 views
0

J'ai un UIScrollView imbriqué dans un autre. Les deux horizontaux.
Mon problème est le suivant: lorsque je fais défiler l'intérieur et qu'il est déjà à la fin (ou dans l'autre sens, au point de départ) mon rouleau externe défile.
Je veux empêcher mon défilement extérieur de défiler: si j'essaie de faire défiler le défilement interne, même s'il ne bouge pas, empêchez l'extérieur de bouger.
Si le défilement interne est à la fin et que j'essaie de défiler, je n'obtiens pas les événements didScroll. Je sais que le suivi est OUI, mais je n'ai pas d'événement pour cela, donc je ne sais pas quand l'utilisateur a suivi le défilement interne.
En outre, je ne peux pas utiliser touchesBegan dans ma VC parce que le défilement interne avale ce contact.
Est-ce que quelqu'un a une idée de comment le faire?UIScrollViews imbriqués et défilement dans le même sens

Merci,

Noam

Répondre

0

Essayez votre point de vue de sous-classement de défilement et INNER - (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event primordial. Cette méthode doit renvoyer la vue qui doit accepter l'événement. Par conséquent, lorsque vous obtenez le défilement pour la vue de défilement interne, vous ne devez pas la passer dans la chaîne du répondeur (c'est-à-dire appeler [super hitTest...]). En outre - vous devez définir le délégué pour les affichages de défilement pour recevoir le didScroll... et d'autres appels de méthode de délégué.

Questions connexes